diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c26c5c2b0d..c82c76cf5d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ +Release v1.48.5 (2023-11-27) +=== + +### Service Client Updates +* `service/appsync`: Updates service API and documentation +* `service/b2bi`: Updates service API, documentation, paginators, and examples +* `service/backup`: Updates service API, documentation, and paginators +* `service/controltower`: Updates service API and documentation +* `service/elasticfilesystem`: Updates service API and documentation + * Adding support for EFS Replication to existing file system. +* `service/fis`: Updates service API, documentation, and paginators +* `service/glue`: Updates service API and documentation + * add observations support to DQ CodeGen config model + update document for connectiontypes supported by ConnectorData entities +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for support for RDS for Db2. +* `service/securityhub`: Updates service API, documentation, paginators, and examples +* `service/transcribe`: Updates service API, documentation, and paginators + Release v1.48.4 (2023-11-27) === diff --git a/aws/version.go b/aws/version.go index 4df2ab64413..e23a835a1d8 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.48.4" +const SDKVersion = "1.48.5" diff --git a/models/apis/appsync/2017-07-25/api-2.json b/models/apis/appsync/2017-07-25/api-2.json index e3d22a7c158..02d35db07a4 100644 --- a/models/apis/appsync/2017-07-25/api-2.json +++ b/models/apis/appsync/2017-07-25/api-2.json @@ -457,6 +457,20 @@ {"shape":"InternalFailureException"} ] }, + "GetDataSourceIntrospection":{ + "name":"GetDataSourceIntrospection", + "http":{ + "method":"GET", + "requestUri":"/v1/datasources/introspections/{introspectionId}" + }, + "input":{"shape":"GetDataSourceIntrospectionRequest"}, + "output":{"shape":"GetDataSourceIntrospectionResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"NotFoundException"}, + {"shape":"InternalFailureException"} + ] + }, "GetDomainName":{ "name":"GetDomainName", "http":{ @@ -744,6 +758,21 @@ {"shape":"InternalFailureException"} ] }, + "StartDataSourceIntrospection":{ + "name":"StartDataSourceIntrospection", + "http":{ + "method":"POST", + "requestUri":"/v1/datasources/introspections" + }, + "input":{"shape":"StartDataSourceIntrospectionRequest"}, + "output":{"shape":"StartDataSourceIntrospectionResponse"}, + "errors":[ + {"shape":"NotFoundException"}, + {"shape":"UnauthorizedException"}, + {"shape":"InternalFailureException"}, + {"shape":"BadRequestException"} + ] + }, "StartSchemaCreation":{ "name":"StartSchemaCreation", "http":{ @@ -1530,6 +1559,75 @@ "eventBridgeConfig":{"shape":"EventBridgeDataSourceConfig"} } }, + "DataSourceIntrospectionModel":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "fields":{"shape":"DataSourceIntrospectionModelFields"}, + "primaryKey":{"shape":"DataSourceIntrospectionModelIndex"}, + "indexes":{"shape":"DataSourceIntrospectionModelIndexes"}, + "sdl":{"shape":"String"} + } + }, + "DataSourceIntrospectionModelField":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "type":{"shape":"DataSourceIntrospectionModelFieldType"}, + "length":{"shape":"Long"} + } + }, + "DataSourceIntrospectionModelFieldType":{ + "type":"structure", + "members":{ + "kind":{"shape":"String"}, + "name":{"shape":"String"}, + "type":{"shape":"DataSourceIntrospectionModelFieldType"}, + "values":{"shape":"DataSourceIntrospectionModelFieldTypeValues"} + } + }, + "DataSourceIntrospectionModelFieldTypeValues":{ + "type":"list", + "member":{"shape":"String"} + }, + "DataSourceIntrospectionModelFields":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModelField"} + }, + "DataSourceIntrospectionModelIndex":{ + "type":"structure", + "members":{ + "name":{"shape":"String"}, + "fields":{"shape":"DataSourceIntrospectionModelIndexFields"} + } + }, + "DataSourceIntrospectionModelIndexFields":{ + "type":"list", + "member":{"shape":"String"} + }, + "DataSourceIntrospectionModelIndexes":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModelIndex"} + }, + "DataSourceIntrospectionModels":{ + "type":"list", + "member":{"shape":"DataSourceIntrospectionModel"} + }, + "DataSourceIntrospectionResult":{ + "type":"structure", + "members":{ + "models":{"shape":"DataSourceIntrospectionModels"}, + "nextToken":{"shape":"PaginationToken"} + } + }, + "DataSourceIntrospectionStatus":{ + "type":"string", + "enum":[ + "PROCESSING", + "FAILED", + "SUCCESS" + ] + }, "DataSourceType":{ "type":"string", "enum":[ @@ -2005,6 +2103,41 @@ "apiCache":{"shape":"ApiCache"} } }, + "GetDataSourceIntrospectionRequest":{ + "type":"structure", + "required":["introspectionId"], + "members":{ + "introspectionId":{ + "shape":"String", + "location":"uri", + "locationName":"introspectionId" + }, + "includeModelsSDL":{ + "shape":"Boolean", + "location":"querystring", + "locationName":"includeModelsSDL" + }, + "nextToken":{ + "shape":"PaginationToken", + "location":"querystring", + "locationName":"nextToken" + }, + "maxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "GetDataSourceIntrospectionResponse":{ + "type":"structure", + "members":{ + "introspectionId":{"shape":"String"}, + "introspectionStatus":{"shape":"DataSourceIntrospectionStatus"}, + "introspectionStatusDetail":{"shape":"String"}, + "introspectionResult":{"shape":"DataSourceIntrospectionResult"} + } + }, "GetDataSourceRequest":{ "type":"structure", "required":[ @@ -2754,6 +2887,36 @@ "functions":{"shape":"FunctionsIds"} } }, + "RdsDataApiConfig":{ + "type":"structure", + "required":[ + "resourceArn", + "secretArn", + "databaseName" + ], + "members":{ + "resourceArn":{"shape":"RdsDataApiConfigResourceArn"}, + "secretArn":{"shape":"RdsDataApiConfigSecretArn"}, + "databaseName":{"shape":"RdsDataApiConfigDatabaseName"} + } + }, + "RdsDataApiConfigDatabaseName":{ + "type":"string", + "max":128, + "min":1 + }, + "RdsDataApiConfigResourceArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[a-z-]*:rds:[a-z0-9-]*:\\d{12}:cluster:[0-9A-Za-z_/-]*$" + }, + "RdsDataApiConfigSecretArn":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:[a-z-]*:secretsmanager:[a-z0-9-]*:\\d{12}:secret:[0-9A-Za-z_/-]*$" + }, "RdsHttpEndpointConfig":{ "type":"structure", "members":{ @@ -2882,6 +3045,20 @@ "type":"list", "member":{"shape":"SourceApiAssociationSummary"} }, + "StartDataSourceIntrospectionRequest":{ + "type":"structure", + "members":{ + "rdsDataApiConfig":{"shape":"RdsDataApiConfig"} + } + }, + "StartDataSourceIntrospectionResponse":{ + "type":"structure", + "members":{ + "introspectionId":{"shape":"String"}, + "introspectionStatus":{"shape":"DataSourceIntrospectionStatus"}, + "introspectionStatusDetail":{"shape":"String"} + } + }, "StartSchemaCreationRequest":{ "type":"structure", "required":[ diff --git a/models/apis/appsync/2017-07-25/docs-2.json b/models/apis/appsync/2017-07-25/docs-2.json index 4305d69026b..7a7d35c7d78 100644 --- a/models/apis/appsync/2017-07-25/docs-2.json +++ b/models/apis/appsync/2017-07-25/docs-2.json @@ -30,6 +30,7 @@ "GetApiAssociation": "

Retrieves an ApiAssociation object.

", "GetApiCache": "

Retrieves an ApiCache object.

", "GetDataSource": "

Retrieves a DataSource object.

", + "GetDataSourceIntrospection": "

Retrieves the record of an existing introspection. If the retrieval is successful, the result of the instrospection will also be returned. If the retrieval fails the operation, an error message will be returned instead.

", "GetDomainName": "

Retrieves a custom DomainName object.

", "GetFunction": "

Get a Function.

", "GetGraphqlApi": "

Retrieves a GraphqlApi object.

", @@ -49,6 +50,7 @@ "ListTagsForResource": "

Lists the tags for a resource.

", "ListTypes": "

Lists the types for a given API.

", "ListTypesByAssociation": "

Lists Type objects by the source API association ID.

", + "StartDataSourceIntrospection": "

Creates a new introspection. Returns the introspectionId of the new introspection after its creation.

", "StartSchemaCreation": "

Adds a new schema to your GraphQL API.

This operation is asynchronous. Use to determine when it has completed.

", "StartSchemaMerge": "

Initiates a merge operation. Returns a status that shows the result of the merge operation.

", "TagResource": "

Tags a resource with user-supplied tags.

", @@ -258,6 +260,7 @@ "CreateGraphqlApiRequest$xrayEnabled": "

A flag indicating whether to use X-Ray tracing for the GraphqlApi.

", "DynamodbDataSourceConfig$useCallerCredentials": "

Set to TRUE to use Amazon Cognito credentials with this data source.

", "DynamodbDataSourceConfig$versioned": "

Set to TRUE to use Conflict Detection and Resolution with this data source.

", + "GetDataSourceIntrospectionRequest$includeModelsSDL": "

A boolean flag that determines whether SDL should be generated for introspected types or not. If set to true, each model will contain an sdl property that contains the SDL for that type. The SDL only contains the type data and no additional metadata or directives.

", "GraphqlApi$xrayEnabled": "

A flag indicating whether to use X-Ray tracing for this GraphqlApi.

", "LogConfig$excludeVerboseContent": "

Set to TRUE to exclude sections that contain information such as headers, context, and evaluated mapping templates, regardless of logging level.

", "UpdateGraphqlApiRequest$xrayEnabled": "

A flag indicating whether to use X-Ray tracing for the GraphqlApi.

" @@ -458,6 +461,75 @@ "UpdateDataSourceResponse$dataSource": "

The updated DataSource object.

" } }, + "DataSourceIntrospectionModel": { + "base": "

Contains the introspected data that was retrieved from the data source.

", + "refs": { + "DataSourceIntrospectionModels$member": null + } + }, + "DataSourceIntrospectionModelField": { + "base": "

Represents the fields that were retrieved from the introspected data.

", + "refs": { + "DataSourceIntrospectionModelFields$member": null + } + }, + "DataSourceIntrospectionModelFieldType": { + "base": "

Represents the type data for each field retrieved from the introspection.

", + "refs": { + "DataSourceIntrospectionModelField$type": "

The DataSourceIntrospectionModelFieldType object data.

", + "DataSourceIntrospectionModelFieldType$type": "

The DataSourceIntrospectionModelFieldType object data. The type is only present if DataSourceIntrospectionModelFieldType.kind is set to NonNull or List.

The type typically contains its own kind and name fields to represent the actual type data. For instance, type could contain a kind value of Scalar with a name value of String. The values Scalar and String will be collectively stored in the values field.

" + } + }, + "DataSourceIntrospectionModelFieldTypeValues": { + "base": null, + "refs": { + "DataSourceIntrospectionModelFieldType$values": "

The values of the type field. This field represents the AppSync data type equivalent of the introspected field.

" + } + }, + "DataSourceIntrospectionModelFields": { + "base": null, + "refs": { + "DataSourceIntrospectionModel$fields": "

The DataSourceIntrospectionModelField object data.

" + } + }, + "DataSourceIntrospectionModelIndex": { + "base": "

The index that was retrieved from the introspected data.

", + "refs": { + "DataSourceIntrospectionModel$primaryKey": "

The primary key stored as a DataSourceIntrospectionModelIndex object.

", + "DataSourceIntrospectionModelIndexes$member": null + } + }, + "DataSourceIntrospectionModelIndexFields": { + "base": null, + "refs": { + "DataSourceIntrospectionModelIndex$fields": "

The fields of the index.

" + } + }, + "DataSourceIntrospectionModelIndexes": { + "base": null, + "refs": { + "DataSourceIntrospectionModel$indexes": "

The array of DataSourceIntrospectionModelIndex objects.

" + } + }, + "DataSourceIntrospectionModels": { + "base": null, + "refs": { + "DataSourceIntrospectionResult$models": "

The array of DataSourceIntrospectionModel objects.

" + } + }, + "DataSourceIntrospectionResult": { + "base": "

Represents the output of a DataSourceIntrospectionResult. This is the populated result of a GetDataSourceIntrospection operation.

", + "refs": { + "GetDataSourceIntrospectionResponse$introspectionResult": "

The DataSourceIntrospectionResult object data.

" + } + }, + "DataSourceIntrospectionStatus": { + "base": null, + "refs": { + "GetDataSourceIntrospectionResponse$introspectionStatus": "

The status of the introspection during retrieval. By default, when a new instrospection is being retrieved, the status will be set to PROCESSING. Once the operation has been completed, the status will change to SUCCESS or FAILED depending on how the data was parsed. A FAILED operation will return an error and its details as an introspectionStatusDetail.

", + "StartDataSourceIntrospectionResponse$introspectionStatus": "

The status of the introspection during creation. By default, when a new instrospection has been created, the status will be set to PROCESSING. Once the operation has been completed, the status will change to SUCCESS or FAILED depending on how the data was parsed. A FAILED operation will return an error and its details as an introspectionStatusDetail.

" + } + }, "DataSourceType": { "base": null, "refs": { @@ -767,6 +839,16 @@ "refs": { } }, + "GetDataSourceIntrospectionRequest": { + "base": null, + "refs": { + } + }, + "GetDataSourceIntrospectionResponse": { + "base": null, + "refs": { + } + }, "GetDataSourceRequest": { "base": null, "refs": { @@ -1067,6 +1149,7 @@ "CachingConfig$ttl": "

The TTL in seconds for a resolver that has caching activated.

Valid values are 1–3,600 seconds.

", "CreateApiCacheRequest$ttl": "

TTL in seconds for cache entries.

Valid values are 1–3,600 seconds.

", "CreateApiKeyRequest$expires": "

From the creation time, the time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour. The default value for this parameter is 7 days from creation time. For more information, see .

", + "DataSourceIntrospectionModelField$length": "

The length value of the introspected field.

", "DeltaSyncConfig$baseTableTTL": "

The number of minutes that an Item is stored in the data source.

", "DeltaSyncConfig$deltaSyncTableTTL": "

The number of minutes that a Delta Sync log entry is stored in the Delta Sync table.

", "OpenIDConnectConfig$iatTTL": "

The number of milliseconds that a token is valid after it's issued to a user.

", @@ -1113,6 +1196,7 @@ "MaxResults": { "base": null, "refs": { + "GetDataSourceIntrospectionRequest$maxResults": "

The maximum number of introspected types that will be returned in a single response.

", "ListApiKeysRequest$maxResults": "

The maximum number of results that you want the request to return.

", "ListDataSourcesRequest$maxResults": "

The maximum number of results that you want the request to return.

", "ListDomainNamesRequest$maxResults": "

The maximum number of results that you want the request to return.

", @@ -1168,6 +1252,8 @@ "PaginationToken": { "base": null, "refs": { + "DataSourceIntrospectionResult$nextToken": "

Determines the number of types to be returned in a single response before paginating. This value is typically taken from nextToken value from the previous response.

", + "GetDataSourceIntrospectionRequest$nextToken": "

Determines the number of types to be returned in a single response before paginating. This value is typically taken from nextToken value from the previous response.

", "ListApiKeysRequest$nextToken": "

An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.

", "ListApiKeysResponse$nextToken": "

An identifier to pass in the next request to this operation to return the next set of items in the list.

", "ListDataSourcesRequest$nextToken": "

An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.

", @@ -1198,6 +1284,30 @@ "UpdateResolverRequest$pipelineConfig": "

The PipelineConfig.

" } }, + "RdsDataApiConfig": { + "base": "

Contains the metadata required to introspect the RDS cluster.

", + "refs": { + "StartDataSourceIntrospectionRequest$rdsDataApiConfig": "

The rdsDataApiConfig object data.

" + } + }, + "RdsDataApiConfigDatabaseName": { + "base": null, + "refs": { + "RdsDataApiConfig$databaseName": "

The name of the database in the cluster.

" + } + }, + "RdsDataApiConfigResourceArn": { + "base": null, + "refs": { + "RdsDataApiConfig$resourceArn": "

The resource ARN of the RDS cluster.

" + } + }, + "RdsDataApiConfigSecretArn": { + "base": null, + "refs": { + "RdsDataApiConfig$secretArn": "

The secret's ARN that was obtained from Secrets Manager. A secret consists of secret information, the secret value, plus metadata about the secret. A secret value can be a string or binary. It typically includes the ARN, secret name and description, policies, tags, encryption key from the Key Management Service, and key rotation data.

" + } + }, "RdsHttpEndpointConfig": { "base": "

The Amazon Relational Database Service (Amazon RDS) HTTP endpoint configuration.

", "refs": { @@ -1339,6 +1449,16 @@ "ListSourceApiAssociationsResponse$sourceApiAssociationSummaries": "

The SourceApiAssociationSummary object data.

" } }, + "StartDataSourceIntrospectionRequest": { + "base": null, + "refs": { + } + }, + "StartDataSourceIntrospectionResponse": { + "base": null, + "refs": { + } + }, "StartSchemaCreationRequest": { "base": null, "refs": { @@ -1404,6 +1524,14 @@ "DataSource$dataSourceArn": "

The data source Amazon Resource Name (ARN).

", "DataSource$description": "

The description of the data source.

", "DataSource$serviceRoleArn": "

The Identity and Access Management (IAM) service role Amazon Resource Name (ARN) for the data source. The system assumes this role when accessing the data source.

", + "DataSourceIntrospectionModel$name": "

The name of the model. For example, this could be the name of a single table in a database.

", + "DataSourceIntrospectionModel$sdl": "

Contains the output of the SDL that was generated from the introspected types. This is controlled by the includeModelsSDL parameter of the GetDataSourceIntrospection operation.

", + "DataSourceIntrospectionModelField$name": "

The name of the field that was retrieved from the introspected data.

", + "DataSourceIntrospectionModelFieldType$kind": "

Specifies the classification of data. For example, this could be set to values like Scalar or NonNull to indicate a fundamental property of the field.

Valid values include:

", + "DataSourceIntrospectionModelFieldType$name": "

The name of the data type that represents the field. For example, String is a valid name value.

", + "DataSourceIntrospectionModelFieldTypeValues$member": null, + "DataSourceIntrospectionModelIndex$name": "

The name of the index.

", + "DataSourceIntrospectionModelIndexFields$member": null, "DeleteApiCacheRequest$apiId": "

The API ID.

", "DeleteApiKeyRequest$apiId": "

The API ID.

", "DeleteApiKeyRequest$id": "

The ID for the API key.

", @@ -1432,6 +1560,9 @@ "FunctionConfiguration$functionVersion": "

The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.

", "FunctionsIds$member": null, "GetApiCacheRequest$apiId": "

The API ID.

", + "GetDataSourceIntrospectionRequest$introspectionId": "

The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.

", + "GetDataSourceIntrospectionResponse$introspectionId": "

The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.

", + "GetDataSourceIntrospectionResponse$introspectionStatusDetail": "

The error detail field. When a FAILED introspectionStatus is returned, the introspectionStatusDetail will also return the exact error that was generated during the operation.

", "GetDataSourceRequest$apiId": "

The API ID.

", "GetFunctionRequest$apiId": "

The GraphQL API ID.

", "GetGraphqlApiRequest$apiId": "

The API ID for the GraphQL API.

", @@ -1496,6 +1627,8 @@ "SourceApiAssociationSummary$mergedApiId": "

The ID of the AppSync Merged API.

", "SourceApiAssociationSummary$mergedApiArn": "

The Amazon Resource Name (ARN) of the AppSync Merged API.

", "SourceApiAssociationSummary$description": "

The description field.

", + "StartDataSourceIntrospectionResponse$introspectionId": "

The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.

", + "StartDataSourceIntrospectionResponse$introspectionStatusDetail": "

The error detail field. When a FAILED introspectionStatus is returned, the introspectionStatusDetail will also return the exact error that was generated during the operation.

", "StartSchemaCreationRequest$apiId": "

The API ID.

", "StartSchemaMergeRequest$associationId": "

The ID generated by the AppSync service for the source API association.

", "StartSchemaMergeRequest$mergedApiIdentifier": "

The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.

", diff --git a/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json b/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json index c966fe5ea0f..36caee6deeb 100644 --- a/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json +++ b/models/apis/appsync/2017-07-25/endpoint-rule-set-1.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -58,293 +57,258 @@ "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" } - ] + ], + "type": "tree" }, { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "aws.partition", "argv": [ { "ref": "Region" } - ] + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "aws.partition", + "fn": "booleanEquals", "argv": [ { - "ref": "Region" - } - ], - "assign": "PartitionResult" + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] } ], - "type": "tree", "rules": [ { "conditions": [ { "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", + "fn": "getAttr", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://appsync-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + "ref": "PartitionResult" + }, + "supportsDualStack" ] } ] - }, + } + ], + "rules": [ { "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" + "endpoint": { + "url": "https://appsync-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] }, true ] } ], - "type": "tree", "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - true, - { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://appsync-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - } - ] - }, { "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" + "endpoint": { + "url": "https://appsync-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] + ], + "type": "tree" }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "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://appsync.{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://appsync.{Region}.{PartitionResult#dnsSuffix}", + "url": "https://appsync.{Region}.{PartitionResult#dualStackDnsSuffix}", "properties": {}, "headers": {} }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://appsync.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, - { - "conditions": [], - "error": "Invalid Configuration: Missing Region", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/b2bi/2022-06-23/api-2.json b/models/apis/b2bi/2022-06-23/api-2.json new file mode 100644 index 00000000000..228411dcff8 --- /dev/null +++ b/models/apis/b2bi/2022-06-23/api-2.json @@ -0,0 +1,1546 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2022-06-23", + "endpointPrefix":"b2bi", + "jsonVersion":"1.0", + "protocol":"json", + "serviceAbbreviation":"AWS B2BI", + "serviceFullName":"AWS B2B Data Interchange", + "serviceId":"b2bi", + "signatureVersion":"v4", + "signingName":"b2bi", + "targetPrefix":"B2BI", + "uid":"b2bi-2022-06-23" + }, + "operations":{ + "CreateCapability":{ + "name":"CreateCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateCapabilityRequest"}, + "output":{"shape":"CreateCapabilityResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreatePartnership":{ + "name":"CreatePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreatePartnershipRequest"}, + "output":{"shape":"CreatePartnershipResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateProfile":{ + "name":"CreateProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateProfileRequest"}, + "output":{"shape":"CreateProfileResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "CreateTransformer":{ + "name":"CreateTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTransformerRequest"}, + "output":{"shape":"CreateTransformerResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteCapability":{ + "name":"DeleteCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteCapabilityRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeletePartnership":{ + "name":"DeletePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeletePartnershipRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteProfile":{ + "name":"DeleteProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteProfileRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "DeleteTransformer":{ + "name":"DeleteTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTransformerRequest"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "GetCapability":{ + "name":"GetCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCapabilityRequest"}, + "output":{"shape":"GetCapabilityResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetPartnership":{ + "name":"GetPartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetPartnershipRequest"}, + "output":{"shape":"GetPartnershipResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetProfile":{ + "name":"GetProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetProfileRequest"}, + "output":{"shape":"GetProfileResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetTransformer":{ + "name":"GetTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTransformerRequest"}, + "output":{"shape":"GetTransformerResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "GetTransformerJob":{ + "name":"GetTransformerJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetTransformerJobRequest"}, + "output":{"shape":"GetTransformerJobResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListCapabilities":{ + "name":"ListCapabilities", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListCapabilitiesRequest"}, + "output":{"shape":"ListCapabilitiesResponse"} + }, + "ListPartnerships":{ + "name":"ListPartnerships", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListPartnershipsRequest"}, + "output":{"shape":"ListPartnershipsResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ] + }, + "ListProfiles":{ + "name":"ListProfiles", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListProfilesRequest"}, + "output":{"shape":"ListProfilesResponse"} + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListTransformers":{ + "name":"ListTransformers", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTransformersRequest"}, + "output":{"shape":"ListTransformersResponse"} + }, + "StartTransformerJob":{ + "name":"StartTransformerJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartTransformerJobRequest"}, + "output":{"shape":"StartTransformerJobResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "TestMapping":{ + "name":"TestMapping", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TestMappingRequest"}, + "output":{"shape":"TestMappingResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "TestParsing":{ + "name":"TestParsing", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TestParsingRequest"}, + "output":{"shape":"TestParsingResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateCapability":{ + "name":"UpdateCapability", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateCapabilityRequest"}, + "output":{"shape":"UpdateCapabilityResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdatePartnership":{ + "name":"UpdatePartnership", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdatePartnershipRequest"}, + "output":{"shape":"UpdatePartnershipResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateProfile":{ + "name":"UpdateProfile", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateProfileRequest"}, + "output":{"shape":"UpdateProfileResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + }, + "UpdateTransformer":{ + "name":"UpdateTransformer", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateTransformerRequest"}, + "output":{"shape":"UpdateTransformerResponse"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, + "BucketName":{ + "type":"string", + "max":63, + "min":3 + }, + "BusinessName":{ + "type":"string", + "max":254, + "min":1 + }, + "CapabilityConfiguration":{ + "type":"structure", + "members":{ + "edi":{"shape":"EdiConfiguration"} + }, + "union":true + }, + "CapabilityId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "CapabilityList":{ + "type":"list", + "member":{"shape":"CapabilitySummary"} + }, + "CapabilityName":{ + "type":"string", + "max":254, + "min":1 + }, + "CapabilitySummary":{ + "type":"structure", + "required":[ + "capabilityId", + "name", + "type", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "CapabilityType":{ + "type":"string", + "enum":["edi"] + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "CreateCapabilityRequest":{ + "type":"structure", + "required":[ + "name", + "type", + "configuration" + ], + "members":{ + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreatePartnershipRequest":{ + "type":"structure", + "required":[ + "profileId", + "name", + "email" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreatePartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreateProfileRequest":{ + "type":"structure", + "required":[ + "name", + "phone", + "businessName", + "logging" + ], + "members":{ + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "businessName", + "phone", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "businessName":{"shape":"BusinessName"}, + "phone":{"shape":"Phone"}, + "email":{"shape":"Email"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreateTransformerRequest":{ + "type":"structure", + "required":[ + "name", + "fileFormat", + "mappingTemplate", + "ediType" + ], + "members":{ + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + }, + "tags":{"shape":"TagList"} + } + }, + "CreateTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"} + } + }, + "CreatedDate":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "DeleteCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"} + } + }, + "DeletePartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"} + } + }, + "DeleteProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"} + } + }, + "DeleteTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"} + } + }, + "EdiConfiguration":{ + "type":"structure", + "required":[ + "type", + "inputLocation", + "outputLocation", + "transformerId" + ], + "members":{ + "type":{"shape":"EdiType"}, + "inputLocation":{"shape":"S3Location"}, + "outputLocation":{"shape":"S3Location"}, + "transformerId":{"shape":"TransformerId"} + } + }, + "EdiType":{ + "type":"structure", + "members":{ + "x12Details":{"shape":"X12Details"} + }, + "union":true + }, + "Email":{ + "type":"string", + "max":254, + "min":5, + "pattern":"[\\w\\.\\-]+@[\\w\\.\\-]+", + "sensitive":true + }, + "ErrorMessage":{ + "type":"string", + "max":1024, + "min":10 + }, + "FileFormat":{ + "type":"string", + "enum":[ + "XML", + "JSON" + ] + }, + "FileLocation":{ + "type":"string", + "max":1024, + "min":0 + }, + "GetCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"} + } + }, + "GetCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetPartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"} + } + }, + "GetPartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"} + } + }, + "GetProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "phone", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "GetTransformerJobRequest":{ + "type":"structure", + "required":[ + "transformerJobId", + "transformerId" + ], + "members":{ + "transformerJobId":{"shape":"TransformerJobId"}, + "transformerId":{"shape":"TransformerId"} + } + }, + "GetTransformerJobResponse":{ + "type":"structure", + "required":["status"], + "members":{ + "status":{"shape":"TransformerJobStatus"}, + "outputFiles":{"shape":"S3LocationList"}, + "message":{"shape":"String"} + } + }, + "GetTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"} + } + }, + "GetTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "InstructionsDocuments":{ + "type":"list", + "member":{"shape":"S3Location"}, + "max":5, + "min":0 + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"}, + "retryAfterSeconds":{"shape":"Integer"} + }, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListCapabilitiesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListCapabilitiesResponse":{ + "type":"structure", + "required":["capabilities"], + "members":{ + "capabilities":{"shape":"CapabilityList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListPartnershipsRequest":{ + "type":"structure", + "members":{ + "profileId":{"shape":"ProfileId"}, + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListPartnershipsResponse":{ + "type":"structure", + "required":["partnerships"], + "members":{ + "partnerships":{"shape":"PartnershipList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListProfilesRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListProfilesResponse":{ + "type":"structure", + "required":["profiles"], + "members":{ + "profiles":{"shape":"ProfileList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["ResourceARN"], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "Tags":{"shape":"TagList"} + } + }, + "ListTransformersRequest":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PageToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListTransformersResponse":{ + "type":"structure", + "required":["transformers"], + "members":{ + "transformers":{"shape":"TransformerList"}, + "nextToken":{"shape":"PageToken"} + } + }, + "LogGroupName":{ + "type":"string", + "max":512, + "min":1 + }, + "Logging":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, + "MappingTemplate":{ + "type":"string", + "max":350000, + "min":0 + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ModifiedDate":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "PageToken":{ + "type":"string", + "max":2048, + "min":1 + }, + "PartnerName":{ + "type":"string", + "max":254, + "min":1 + }, + "PartnershipCapabilities":{ + "type":"list", + "member":{"shape":"CapabilityId"} + }, + "PartnershipId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "PartnershipList":{ + "type":"list", + "member":{"shape":"PartnershipSummary"} + }, + "PartnershipSummary":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "name":{"shape":"PartnerName"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "Phone":{ + "type":"string", + "max":22, + "min":7, + "pattern":"\\+?([0-9 \\t\\-()\\/]{7,})(?:\\s*(?:#|x\\.?|ext\\.?|extension) \\t*(\\d+))?", + "sensitive":true + }, + "ProfileId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "ProfileList":{ + "type":"list", + "member":{"shape":"ProfileSummary"} + }, + "ProfileName":{ + "type":"string", + "max":254, + "min":1 + }, + "ProfileSummary":{ + "type":"structure", + "required":[ + "profileId", + "name", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"ProfileName"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "ResourceArn":{ + "type":"string", + "max":255, + "min":1 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "S3Key":{ + "type":"string", + "max":1024, + "min":0 + }, + "S3Location":{ + "type":"structure", + "members":{ + "bucketName":{"shape":"BucketName"}, + "key":{"shape":"S3Key"} + } + }, + "S3LocationList":{ + "type":"list", + "member":{"shape":"S3Location"} + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType", + "serviceCode", + "quotaCode" + ], + "members":{ + "message":{"shape":"ErrorMessage"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"}, + "serviceCode":{"shape":"String"}, + "quotaCode":{"shape":"String"} + }, + "exception":true + }, + "StartTransformerJobRequest":{ + "type":"structure", + "required":[ + "inputFile", + "outputLocation", + "transformerId" + ], + "members":{ + "inputFile":{"shape":"S3Location"}, + "outputLocation":{"shape":"S3Location"}, + "transformerId":{"shape":"TransformerId"}, + "clientToken":{ + "shape":"String", + "idempotencyToken":true + } + } + }, + "StartTransformerJobResponse":{ + "type":"structure", + "required":["transformerJobId"], + "members":{ + "transformerJobId":{"shape":"TransformerJobId"} + } + }, + "String":{"type":"string"}, + "Tag":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"TagKey"}, + "Value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "Tags" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "Tags":{"shape":"TagList"} + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "TestMappingInputFileContent":{ + "type":"string", + "max":200000, + "min":0 + }, + "TestMappingRequest":{ + "type":"structure", + "required":[ + "inputFileContent", + "mappingTemplate", + "fileFormat" + ], + "members":{ + "inputFileContent":{"shape":"TestMappingInputFileContent"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "fileFormat":{"shape":"FileFormat"} + } + }, + "TestMappingResponse":{ + "type":"structure", + "required":["mappedFileContent"], + "members":{ + "mappedFileContent":{"shape":"String"} + } + }, + "TestParsingRequest":{ + "type":"structure", + "required":[ + "inputFile", + "fileFormat", + "ediType" + ], + "members":{ + "inputFile":{"shape":"S3Location"}, + "fileFormat":{"shape":"FileFormat"}, + "ediType":{"shape":"EdiType"} + } + }, + "TestParsingResponse":{ + "type":"structure", + "required":["parsedFileContent"], + "members":{ + "parsedFileContent":{"shape":"String"} + } + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"ErrorMessage"}, + "retryAfterSeconds":{"shape":"Integer"} + }, + "exception":true, + "retryable":{"throttling":false} + }, + "TradingPartnerId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerId":{ + "type":"string", + "max":64, + "min":1, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerJobId":{ + "type":"string", + "max":25, + "min":25, + "pattern":"[a-zA-Z0-9_-]+" + }, + "TransformerJobStatus":{ + "type":"string", + "enum":[ + "running", + "succeeded", + "failed" + ] + }, + "TransformerList":{ + "type":"list", + "member":{"shape":"TransformerSummary"} + }, + "TransformerName":{ + "type":"string", + "max":254, + "min":1 + }, + "TransformerStatus":{ + "type":"string", + "enum":[ + "active", + "inactive" + ] + }, + "TransformerSummary":{ + "type":"structure", + "required":[ + "transformerId", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "ResourceARN", + "TagKeys" + ], + "members":{ + "ResourceARN":{"shape":"AmazonResourceName"}, + "TagKeys":{"shape":"TagKeyList"} + } + }, + "UpdateCapabilityRequest":{ + "type":"structure", + "required":["capabilityId"], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "name":{"shape":"CapabilityName"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"} + } + }, + "UpdateCapabilityResponse":{ + "type":"structure", + "required":[ + "capabilityId", + "capabilityArn", + "name", + "type", + "configuration", + "createdAt" + ], + "members":{ + "capabilityId":{"shape":"CapabilityId"}, + "capabilityArn":{"shape":"ResourceArn"}, + "name":{"shape":"CapabilityName"}, + "type":{"shape":"CapabilityType"}, + "configuration":{"shape":"CapabilityConfiguration"}, + "instructionsDocuments":{"shape":"InstructionsDocuments"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdatePartnershipRequest":{ + "type":"structure", + "required":["partnershipId"], + "members":{ + "partnershipId":{"shape":"PartnershipId"}, + "name":{"shape":"PartnerName"}, + "capabilities":{"shape":"PartnershipCapabilities"} + } + }, + "UpdatePartnershipResponse":{ + "type":"structure", + "required":[ + "profileId", + "partnershipId", + "partnershipArn", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "partnershipId":{"shape":"PartnershipId"}, + "partnershipArn":{"shape":"ResourceArn"}, + "name":{"shape":"PartnerName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "capabilities":{"shape":"PartnershipCapabilities"}, + "tradingPartnerId":{"shape":"TradingPartnerId"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdateProfileRequest":{ + "type":"structure", + "required":["profileId"], + "members":{ + "profileId":{"shape":"ProfileId"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"} + } + }, + "UpdateProfileResponse":{ + "type":"structure", + "required":[ + "profileId", + "profileArn", + "name", + "phone", + "businessName", + "createdAt" + ], + "members":{ + "profileId":{"shape":"ProfileId"}, + "profileArn":{"shape":"ResourceArn"}, + "name":{"shape":"ProfileName"}, + "email":{"shape":"Email"}, + "phone":{"shape":"Phone"}, + "businessName":{"shape":"BusinessName"}, + "logging":{"shape":"Logging"}, + "logGroupName":{"shape":"LogGroupName"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "UpdateTransformerRequest":{ + "type":"structure", + "required":["transformerId"], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"} + } + }, + "UpdateTransformerResponse":{ + "type":"structure", + "required":[ + "transformerId", + "transformerArn", + "name", + "fileFormat", + "mappingTemplate", + "status", + "ediType", + "createdAt", + "modifiedAt" + ], + "members":{ + "transformerId":{"shape":"TransformerId"}, + "transformerArn":{"shape":"ResourceArn"}, + "name":{"shape":"TransformerName"}, + "fileFormat":{"shape":"FileFormat"}, + "mappingTemplate":{"shape":"MappingTemplate"}, + "status":{"shape":"TransformerStatus"}, + "ediType":{"shape":"EdiType"}, + "sampleDocument":{"shape":"FileLocation"}, + "createdAt":{"shape":"CreatedDate"}, + "modifiedAt":{"shape":"ModifiedDate"} + } + }, + "ValidationException":{ + "type":"structure", + "required":["Message"], + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "exception":true + }, + "X12Details":{ + "type":"structure", + "members":{ + "transactionSet":{"shape":"X12TransactionSet"}, + "version":{"shape":"X12Version"} + } + }, + "X12TransactionSet":{ + "type":"string", + "enum":[ + "X12_110", + "X12_180", + "X12_204", + "X12_210", + "X12_214", + "X12_215", + "X12_310", + "X12_315", + "X12_322", + "X12_404", + "X12_410", + "X12_820", + "X12_824", + "X12_830", + "X12_846", + "X12_850", + "X12_852", + "X12_855", + "X12_856", + "X12_860", + "X12_861", + "X12_864", + "X12_940", + "X12_990", + "X12_997" + ] + }, + "X12Version":{ + "type":"string", + "enum":[ + "VERSION_4010", + "VERSION_4030", + "VERSION_5010" + ] + } + } +} diff --git a/models/apis/b2bi/2022-06-23/docs-2.json b/models/apis/b2bi/2022-06-23/docs-2.json new file mode 100644 index 00000000000..c25db82df21 --- /dev/null +++ b/models/apis/b2bi/2022-06-23/docs-2.json @@ -0,0 +1,857 @@ +{ + "version": "2.0", + "service": "

This is the Amazon Web Services B2B Data Interchange API Reference. It provides descriptions, API request parameters, and the XML response for each of the B2BI API actions.

B2BI enables automated exchange of EDI (electronic data interchange) based business-critical transactions at cloud scale, with elasticity and pay-as-you-go pricing. Businesses use EDI documents to exchange transactional data with trading partners, such as suppliers and end customers, using standardized formats such as X12.

Rather than actually running a command, you can use the --generate-cli-skeleton parameter with any API call to generate and display a parameter template. You can then use the generated template to customize and use as input on a later command. For details, see Generate and use a parameter skeleton file.

", + "operations": { + "CreateCapability": "

Instantiates a capability based on the specified parameters. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "CreatePartnership": "

Creates a partnership between a customer and a trading partner, based on the supplied parameters. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "CreateProfile": "

Creates a customer profile. You can have up to five customer profiles, each representing a distinct private network. Profiles contain basic information about you and your business.

", + "CreateTransformer": "

Creates a transformer. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

", + "DeleteCapability": "

Deletes the specified capability. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "DeletePartnership": "

Deletes the specified partnership. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "DeleteProfile": "

Deletes the specified profile. Profiles contain basic information about you and your business.

", + "DeleteTransformer": "

Deletes the specified transformer. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

", + "GetCapability": "

Retrieves the details for the specified capability. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "GetPartnership": "

Retrieves the details for a partnership, based on the partner and profile IDs specified. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "GetProfile": "

Retrieves the details for the profile specified by the profile ID. Profiles contain basic information about you and your business.

", + "GetTransformer": "

Retrieves the details for the transformer specified by the transformer ID. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

", + "GetTransformerJob": "

Returns the details of the transformer run, based on the Transformer job ID.

", + "ListCapabilities": "

Lists the capabilities associated with your Amazon Web Services account for your current or specified region. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "ListPartnerships": "

Lists the partnerships associated with your Amazon Web Services account for your current or specified region. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "ListProfiles": "

Lists the profiles associated with your Amazon Web Services account for your current or specified region. Profiles contain basic information about you and your business.

", + "ListTagsForResource": "

Lists all of the tags associated with the Amazon Resource Name (ARN) that you specify. The resource can be a capability, partnership, profile, or transformer.

", + "ListTransformers": "

Lists the available transformers. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

", + "StartTransformerJob": "

Runs a job, using a transformer, to parse input EDI (electronic data interchange) file into the output structures used by Amazon Web Services B2BI Data Interchange.

", + "TagResource": "

Attaches a key-value pair to a resource, as identified by its Amazon Resource Name (ARN). Resources are capability, partnership, profile, transformers and other entities.

There is no response returned from this call.

", + "TestMapping": "

Maps the input file according to the provided template file.

", + "TestParsing": "

Parses the input EDI (electronic data interchange) file.

", + "UntagResource": "

Detaches a key-value pair from the specified resource, as identified by its Amazon Resource Name (ARN). Resources are capability, partnership, profile, transformers and other entities.

", + "UpdateCapability": "

Updates some of the parameters for a capability, based on the specified parameters. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "UpdatePartnership": "

Updates some of the parameters for a partnership between a customer and trading partner. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "UpdateProfile": "

Updates the specified parameters for a profile. Profiles contain basic information about you and your business.

", + "UpdateTransformer": "

Updates the specified parameters for a transformer. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

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

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AmazonResourceName": { + "base": null, + "refs": { + "ListTagsForResourceRequest$ResourceARN": "

Requests the tags associated with a particular Amazon Resource Name (ARN). An ARN is an identifier for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "TagResourceRequest$ResourceARN": "

Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "UntagResourceRequest$ResourceARN": "

Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

" + } + }, + "BucketName": { + "base": null, + "refs": { + "S3Location$bucketName": "

Specifies the name of the Amazon S3 bucket.

" + } + }, + "BusinessName": { + "base": null, + "refs": { + "CreateProfileRequest$businessName": "

Specifies the name for the business associated with this profile.

", + "CreateProfileResponse$businessName": "

Returns the name for the business associated with this profile.

", + "GetProfileResponse$businessName": "

Returns the name for the business associated with this profile.

", + "ProfileSummary$businessName": "

Returns the name for the business associated with this profile.

", + "UpdateProfileRequest$businessName": "

Specifies the name for the business associated with this profile.

", + "UpdateProfileResponse$businessName": "

Returns the name for the business associated with this profile.

" + } + }, + "CapabilityConfiguration": { + "base": "

A capability object. Currently, only EDI (electronic data interchange) capabilities are supported. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "refs": { + "CreateCapabilityRequest$configuration": "

Specifies a structure that contains the details for a capability.

", + "CreateCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

", + "GetCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

", + "UpdateCapabilityRequest$configuration": "

Specifies a structure that contains the details for a capability.

", + "UpdateCapabilityResponse$configuration": "

Returns a structure that contains the details for a capability.

" + } + }, + "CapabilityId": { + "base": null, + "refs": { + "CapabilitySummary$capabilityId": "

Returns a system-assigned unique identifier for the capability.

", + "CreateCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

", + "DeleteCapabilityRequest$capabilityId": "

Specifies a system-assigned unique identifier for the capability.

", + "GetCapabilityRequest$capabilityId": "

Specifies a system-assigned unique identifier for the capability.

", + "GetCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

", + "PartnershipCapabilities$member": null, + "UpdateCapabilityRequest$capabilityId": "

Specifies a system-assigned unique identifier for the capability.

", + "UpdateCapabilityResponse$capabilityId": "

Returns a system-assigned unique identifier for the capability.

" + } + }, + "CapabilityList": { + "base": null, + "refs": { + "ListCapabilitiesResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

" + } + }, + "CapabilityName": { + "base": null, + "refs": { + "CapabilitySummary$name": "

The display name of the capability.

", + "CreateCapabilityRequest$name": "

Specifies the name of the capability, used to identify it.

", + "CreateCapabilityResponse$name": "

Returns the name of the capability used to identify it.

", + "GetCapabilityResponse$name": "

Returns the name of the capability, used to identify it.

", + "UpdateCapabilityRequest$name": "

Specifies a new name for the capability, to replace the existing name.

", + "UpdateCapabilityResponse$name": "

Returns the name of the capability, used to identify it.

" + } + }, + "CapabilitySummary": { + "base": "

Returns the capability summary details. Capabilities contain the information necessary to process incoming EDI (electronic data interchange) documents.

", + "refs": { + "CapabilityList$member": null + } + }, + "CapabilityType": { + "base": null, + "refs": { + "CapabilitySummary$type": "

Returns the type of the capability. Currently, only edi is supported.

", + "CreateCapabilityRequest$type": "

Specifies the type of the capability. Currently, only edi is supported.

", + "CreateCapabilityResponse$type": "

Returns the type of the capability. Currently, only edi is supported.

", + "GetCapabilityResponse$type": "

Returns the type of the capability. Currently, only edi is supported.

", + "UpdateCapabilityResponse$type": "

Returns the type of the capability. Currently, only edi is supported.

" + } + }, + "ConflictException": { + "base": "

A conflict exception is thrown when you attempt to delete a resource (such as a profile or a capability) that is being used by other resources.

", + "refs": { + } + }, + "CreateCapabilityRequest": { + "base": null, + "refs": { + } + }, + "CreateCapabilityResponse": { + "base": null, + "refs": { + } + }, + "CreatePartnershipRequest": { + "base": null, + "refs": { + } + }, + "CreatePartnershipResponse": { + "base": null, + "refs": { + } + }, + "CreateProfileRequest": { + "base": null, + "refs": { + } + }, + "CreateProfileResponse": { + "base": null, + "refs": { + } + }, + "CreateTransformerRequest": { + "base": null, + "refs": { + } + }, + "CreateTransformerResponse": { + "base": null, + "refs": { + } + }, + "CreatedDate": { + "base": null, + "refs": { + "CapabilitySummary$createdAt": "

Returns a timestamp for creation date and time of the capability.

", + "CreateCapabilityResponse$createdAt": "

Returns a timestamp for creation date and time of the capability.

", + "CreatePartnershipResponse$createdAt": "

Returns a timestamp for creation date and time of the partnership.

", + "CreateProfileResponse$createdAt": "

Returns a timestamp representing the time the profile was created.

", + "CreateTransformerResponse$createdAt": "

Returns a timestamp for creation date and time of the transformer.

", + "GetCapabilityResponse$createdAt": "

Returns a timestamp for creation date and time of the capability.

", + "GetPartnershipResponse$createdAt": "

Returns a timestamp for creation date and time of the partnership.

", + "GetProfileResponse$createdAt": "

Returns a timestamp for creation date and time of the transformer.

", + "GetTransformerResponse$createdAt": "

Returns a timestamp for creation date and time of the transformer.

", + "PartnershipSummary$createdAt": "

Returns a timestamp for creation date and time of the partnership.

", + "ProfileSummary$createdAt": "

Returns the timestamp for creation date and time of the profile.

", + "TransformerSummary$createdAt": "

Returns a timestamp indicating when the transformer was created. For example, 2023-07-20T19:58:44.624Z.

", + "UpdateCapabilityResponse$createdAt": "

Returns a timestamp for creation date and time of the capability.

", + "UpdatePartnershipResponse$createdAt": "

Returns a timestamp that identifies the most recent date and time that the partnership was modified.

", + "UpdateProfileResponse$createdAt": "

Returns a timestamp for creation date and time of the profile.

", + "UpdateTransformerResponse$createdAt": "

Returns a timestamp for creation date and time of the transformer.

" + } + }, + "DeleteCapabilityRequest": { + "base": null, + "refs": { + } + }, + "DeletePartnershipRequest": { + "base": null, + "refs": { + } + }, + "DeleteProfileRequest": { + "base": null, + "refs": { + } + }, + "DeleteTransformerRequest": { + "base": null, + "refs": { + } + }, + "EdiConfiguration": { + "base": "

Specifies the details for the EDI (electronic data interchange) transformation.

", + "refs": { + "CapabilityConfiguration$edi": "

An EDI (electronic data interchange) configuration object.

" + } + }, + "EdiType": { + "base": "

Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "refs": { + "CreateTransformerRequest$ediType": "

Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "CreateTransformerResponse$ediType": "

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "EdiConfiguration$type": "

Returns the type of the capability. Currently, only edi is supported.

", + "GetTransformerResponse$ediType": "

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "TestParsingRequest$ediType": "

Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "TransformerSummary$ediType": "

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "UpdateTransformerRequest$ediType": "

Specifies the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

", + "UpdateTransformerResponse$ediType": "

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

" + } + }, + "Email": { + "base": null, + "refs": { + "CreatePartnershipRequest$email": "

Specifies the email address associated with this trading partner.

", + "CreatePartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "CreateProfileRequest$email": "

Specifies the email address associated with this customer profile.

", + "CreateProfileResponse$email": "

Returns the email address associated with this customer profile.

", + "GetPartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "GetProfileResponse$email": "

Returns the email address associated with this customer profile.

", + "UpdatePartnershipResponse$email": "

Returns the email address associated with this trading partner.

", + "UpdateProfileRequest$email": "

Specifies the email address associated with this customer profile.

", + "UpdateProfileResponse$email": "

Returns the email address associated with this customer profile.

" + } + }, + "ErrorMessage": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$Message": null + } + }, + "FileFormat": { + "base": null, + "refs": { + "CreateTransformerRequest$fileFormat": "

Specifies that the currently supported file formats for EDI transformations are JSON and XML.

", + "CreateTransformerResponse$fileFormat": "

Returns that the currently supported file formats for EDI transformations are JSON and XML.

", + "GetTransformerResponse$fileFormat": "

Returns that the currently supported file formats for EDI transformations are JSON and XML.

", + "TestMappingRequest$fileFormat": "

Specifies that the currently supported file formats for EDI transformations are JSON and XML.

", + "TestParsingRequest$fileFormat": "

Specifies that the currently supported file formats for EDI transformations are JSON and XML.

", + "TransformerSummary$fileFormat": "

Returns that the currently supported file formats for EDI transformations are JSON and XML.

", + "UpdateTransformerRequest$fileFormat": "

Specifies that the currently supported file formats for EDI transformations are JSON and XML.

", + "UpdateTransformerResponse$fileFormat": "

Returns that the currently supported file formats for EDI transformations are JSON and XML.

" + } + }, + "FileLocation": { + "base": null, + "refs": { + "CreateTransformerRequest$sampleDocument": "

Specifies a sample EDI document that is used by a transformer as a guide for processing the EDI data.

", + "CreateTransformerResponse$sampleDocument": "

Returns a sample EDI document that is used by a transformer as a guide for processing the EDI data.

", + "GetTransformerResponse$sampleDocument": "

Returns a sample EDI document that is used by a transformer as a guide for processing the EDI data.

", + "TransformerSummary$sampleDocument": "

Returns a sample EDI document that is used by a transformer as a guide for processing the EDI data.

", + "UpdateTransformerRequest$sampleDocument": "

Specifies a sample EDI document that is used by a transformer as a guide for processing the EDI data.

", + "UpdateTransformerResponse$sampleDocument": "

Returns a sample EDI document that is used by a transformer as a guide for processing the EDI data.

" + } + }, + "GetCapabilityRequest": { + "base": null, + "refs": { + } + }, + "GetCapabilityResponse": { + "base": null, + "refs": { + } + }, + "GetPartnershipRequest": { + "base": null, + "refs": { + } + }, + "GetPartnershipResponse": { + "base": null, + "refs": { + } + }, + "GetProfileRequest": { + "base": null, + "refs": { + } + }, + "GetProfileResponse": { + "base": null, + "refs": { + } + }, + "GetTransformerJobRequest": { + "base": null, + "refs": { + } + }, + "GetTransformerJobResponse": { + "base": null, + "refs": { + } + }, + "GetTransformerRequest": { + "base": null, + "refs": { + } + }, + "GetTransformerResponse": { + "base": null, + "refs": { + } + }, + "InstructionsDocuments": { + "base": null, + "refs": { + "CreateCapabilityRequest$instructionsDocuments": "

Specifies one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.

", + "CreateCapabilityResponse$instructionsDocuments": "

Returns one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.

", + "GetCapabilityResponse$instructionsDocuments": "

Returns one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.

", + "UpdateCapabilityRequest$instructionsDocuments": "

Specifies one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.

", + "UpdateCapabilityResponse$instructionsDocuments": "

Returns one or more locations in Amazon S3, each specifying an EDI document that can be used with this capability. Each item contains the name of the bucket and the key, to identify the document's location.

" + } + }, + "Integer": { + "base": null, + "refs": { + "InternalServerException$retryAfterSeconds": "

The server attempts to retry a failed command.

", + "ThrottlingException$retryAfterSeconds": "

The server attempts to retry a command that was throttled.

" + } + }, + "InternalServerException": { + "base": "

This exception is thrown when an error occurs in the Amazon Web Services B2B Data Interchange service.

", + "refs": { + } + }, + "ListCapabilitiesRequest": { + "base": null, + "refs": { + } + }, + "ListCapabilitiesResponse": { + "base": null, + "refs": { + } + }, + "ListPartnershipsRequest": { + "base": null, + "refs": { + } + }, + "ListPartnershipsResponse": { + "base": null, + "refs": { + } + }, + "ListProfilesRequest": { + "base": null, + "refs": { + } + }, + "ListProfilesResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListTransformersRequest": { + "base": null, + "refs": { + } + }, + "ListTransformersResponse": { + "base": null, + "refs": { + } + }, + "LogGroupName": { + "base": null, + "refs": { + "CreateProfileResponse$logGroupName": "

Returns the name of the logging group.

", + "GetProfileResponse$logGroupName": "

Returns the name of the logging group.

", + "ProfileSummary$logGroupName": "

Returns the name of the logging group.

", + "UpdateProfileResponse$logGroupName": "

Returns the name of the logging group.

" + } + }, + "Logging": { + "base": null, + "refs": { + "CreateProfileRequest$logging": "

Specifies whether or not logging is enabled for this profile.

", + "CreateProfileResponse$logging": "

Returns whether or not logging is turned on for this profile.

", + "GetProfileResponse$logging": "

Returns whether or not logging is enabled for this profile.

", + "ProfileSummary$logging": "

Specifies whether or not logging is enabled for this profile.

", + "UpdateProfileResponse$logging": "

Specifies whether or not logging is enabled for this profile.

" + } + }, + "MappingTemplate": { + "base": null, + "refs": { + "CreateTransformerRequest$mappingTemplate": "

Specifies the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "CreateTransformerResponse$mappingTemplate": "

Returns the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "GetTransformerResponse$mappingTemplate": "

Returns the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "TestMappingRequest$mappingTemplate": "

Specifies the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "TransformerSummary$mappingTemplate": "

Returns the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "UpdateTransformerRequest$mappingTemplate": "

Specifies the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

", + "UpdateTransformerResponse$mappingTemplate": "

Returns the name of the mapping template for the transformer. This template is used to convert the input document into the correct set of objects.

" + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListCapabilitiesRequest$maxResults": "

Specifies the maximum number of capabilities to return.

", + "ListPartnershipsRequest$maxResults": "

Specifies the maximum number of capabilities to return.

", + "ListProfilesRequest$maxResults": "

Specifies the maximum number of profiles to return.

", + "ListTransformersRequest$maxResults": "

Specifies the number of items to return for the API response.

" + } + }, + "ModifiedDate": { + "base": null, + "refs": { + "CapabilitySummary$modifiedAt": "

Returns a timestamp that identifies the most recent date and time that the capability was modified.

", + "GetCapabilityResponse$modifiedAt": "

Returns a timestamp for last time the capability was modified.

", + "GetPartnershipResponse$modifiedAt": "

Returns a timestamp that identifies the most recent date and time that the partnership was modified.

", + "GetProfileResponse$modifiedAt": "

Returns a timestamp for last time the profile was modified.

", + "GetTransformerResponse$modifiedAt": "

Returns a timestamp for last time the transformer was modified.

", + "PartnershipSummary$modifiedAt": "

Returns a timestamp that identifies the most recent date and time that the partnership was modified.

", + "ProfileSummary$modifiedAt": "

Returns the timestamp that identifies the most recent date and time that the profile was modified.

", + "TransformerSummary$modifiedAt": "

Returns a timestamp representing the date and time for the most recent change for the transformer object.

", + "UpdateCapabilityResponse$modifiedAt": "

Returns a timestamp for last time the capability was modified.

", + "UpdatePartnershipResponse$modifiedAt": "

Returns a timestamp that identifies the most recent date and time that the partnership was modified.

", + "UpdateProfileResponse$modifiedAt": "

Returns a timestamp for last time the profile was modified.

", + "UpdateTransformerResponse$modifiedAt": "

Returns a timestamp for last time the transformer was modified.

" + } + }, + "PageToken": { + "base": null, + "refs": { + "ListCapabilitiesRequest$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListCapabilitiesResponse$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListPartnershipsRequest$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListPartnershipsResponse$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListProfilesRequest$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListProfilesResponse$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListTransformersRequest$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

", + "ListTransformersResponse$nextToken": "

When additional results are obtained from the command, a NextToken parameter is returned in the output. You can then pass the NextToken parameter in a subsequent command to continue listing additional resources.

" + } + }, + "PartnerName": { + "base": null, + "refs": { + "CreatePartnershipRequest$name": "

Specifies a descriptive name for the partnership.

", + "CreatePartnershipResponse$name": "

Returns a descriptive name for the partnership.

", + "GetPartnershipResponse$name": "

Returns the display name of the partnership

", + "PartnershipSummary$name": "

Returns the name of the partnership.

", + "UpdatePartnershipRequest$name": "

The name of the partnership, used to identify it.

", + "UpdatePartnershipResponse$name": "

The name of the partnership, used to identify it.

" + } + }, + "PartnershipCapabilities": { + "base": null, + "refs": { + "CreatePartnershipRequest$capabilities": "

Specifies a list of the capabilities associated with this partnership.

", + "CreatePartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "GetPartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "PartnershipSummary$capabilities": "

Returns one or more capabilities associated with this partnership.

", + "UpdatePartnershipRequest$capabilities": "

List of the capabilities associated with this partnership.

", + "UpdatePartnershipResponse$capabilities": "

Returns one or more capabilities associated with this partnership.

" + } + }, + "PartnershipId": { + "base": null, + "refs": { + "CreatePartnershipResponse$partnershipId": "

Returns the unique, system-generated identifier for a partnership.

", + "DeletePartnershipRequest$partnershipId": "

Specifies the unique, system-generated identifier for a partnership.

", + "GetPartnershipRequest$partnershipId": "

Specifies the unique, system-generated identifier for a partnership.

", + "GetPartnershipResponse$partnershipId": "

Returns the unique, system-generated identifier for a partnership.

", + "PartnershipSummary$partnershipId": "

Returns the unique, system-generated identifier for a partnership.

", + "UpdatePartnershipRequest$partnershipId": "

Specifies the unique, system-generated identifier for a partnership.

", + "UpdatePartnershipResponse$partnershipId": "

Returns the unique, system-generated identifier for a partnership.

" + } + }, + "PartnershipList": { + "base": null, + "refs": { + "ListPartnershipsResponse$partnerships": "

Specifies a list of your partnerships.

" + } + }, + "PartnershipSummary": { + "base": "

A structure that contains the details for a partnership. Partnerships link trading partners with your profile and a specific transformer, so that the EDI (electronic data interchange) documents that they upload to Amazon S3 can be processed according to their specifications.

", + "refs": { + "PartnershipList$member": null + } + }, + "Phone": { + "base": null, + "refs": { + "CreatePartnershipRequest$phone": "

Specifies the phone number associated with the partnership.

", + "CreatePartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "CreateProfileRequest$phone": "

Specifies the phone number associated with the profile.

", + "CreateProfileResponse$phone": "

Returns the phone number associated with the profile.

", + "GetPartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "GetProfileResponse$phone": "

Returns the phone number associated with the profile.

", + "UpdatePartnershipResponse$phone": "

Returns the phone number associated with the partnership.

", + "UpdateProfileRequest$phone": "

Specifies the phone number associated with the profile.

", + "UpdateProfileResponse$phone": "

Returns the phone number associated with the profile.

" + } + }, + "ProfileId": { + "base": null, + "refs": { + "CreatePartnershipRequest$profileId": "

Specifies the unique, system-generated identifier for the profile connected to this partnership.

", + "CreatePartnershipResponse$profileId": "

Returns the unique, system-generated identifier for the profile connected to this partnership.

", + "CreateProfileResponse$profileId": "

Returns the unique, system-generated identifier for the profile.

", + "DeleteProfileRequest$profileId": "

Specifies the unique, system-generated identifier for the profile.

", + "GetPartnershipResponse$profileId": "

Returns the unique, system-generated identifier for the profile connected to this partnership.

", + "GetProfileRequest$profileId": "

Specifies the unique, system-generated identifier for the profile.

", + "GetProfileResponse$profileId": "

Returns the unique, system-generated identifier for the profile.

", + "ListPartnershipsRequest$profileId": "

Specifies the unique, system-generated identifier for the profile connected to this partnership.

", + "PartnershipSummary$profileId": "

Returns the unique, system-generated identifier for the profile connected to this partnership.

", + "ProfileSummary$profileId": "

Returns the unique, system-generated identifier for the profile.

", + "UpdatePartnershipResponse$profileId": "

Returns the unique, system-generated identifier for the profile connected to this partnership.

", + "UpdateProfileRequest$profileId": "

Specifies the unique, system-generated identifier for the profile.

", + "UpdateProfileResponse$profileId": "

Returns the unique, system-generated identifier for the profile.

" + } + }, + "ProfileList": { + "base": null, + "refs": { + "ListProfilesResponse$profiles": "

Returns an array of ProfileSummary objects.

" + } + }, + "ProfileName": { + "base": null, + "refs": { + "CreateProfileRequest$name": "

Specifies the name of the profile.

", + "CreateProfileResponse$name": "

Returns the name of the profile, used to identify it.

", + "GetProfileResponse$name": "

Returns the name of the profile, used to identify it.

", + "ProfileSummary$name": "

Returns the display name for profile.

", + "UpdateProfileRequest$name": "

The name of the profile, used to identify it.

", + "UpdateProfileResponse$name": "

Returns the name of the profile.

" + } + }, + "ProfileSummary": { + "base": "

Contains the details for a profile. Profiles contain basic information about you and your business.

", + "refs": { + "ProfileList$member": null + } + }, + "ResourceArn": { + "base": null, + "refs": { + "CreateCapabilityResponse$capabilityArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "CreatePartnershipResponse$partnershipArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "CreateProfileResponse$profileArn": "

Returns an Amazon Resource Name (ARN) for the profile.

", + "CreateTransformerResponse$transformerArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "GetCapabilityResponse$capabilityArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "GetPartnershipResponse$partnershipArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "GetProfileResponse$profileArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "GetTransformerResponse$transformerArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "UpdateCapabilityResponse$capabilityArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "UpdatePartnershipResponse$partnershipArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

", + "UpdateProfileResponse$profileArn": "

Returns an Amazon Resource Name (ARN) for the profile.

", + "UpdateTransformerResponse$transformerArn": "

Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services resource, such as a capability, partnership, profile, or transformer.

" + } + }, + "ResourceNotFoundException": { + "base": "

Occurs when the requested resource does not exist, or cannot be found. In some cases, the resource exists in a region other than the region specified in the API call.

", + "refs": { + } + }, + "S3Key": { + "base": null, + "refs": { + "S3Location$key": "

Specifies the Amazon S3 key for the file location.

" + } + }, + "S3Location": { + "base": "

Specifies the details for the Amazon S3 file location that is being used with Amazon Web Services B2BI Data Interchange. File locations in Amazon S3 are identified using a combination of the bucket and key.

", + "refs": { + "EdiConfiguration$inputLocation": "

Contains the Amazon S3 bucket and prefix for the location of the input file, which is contained in an S3Location object.

", + "EdiConfiguration$outputLocation": "

Contains the Amazon S3 bucket and prefix for the location of the output file, which is contained in an S3Location object.

", + "InstructionsDocuments$member": null, + "S3LocationList$member": null, + "StartTransformerJobRequest$inputFile": "

Specifies the location of the input file for the transformation. The location consists of an Amazon S3 bucket and prefix.

", + "StartTransformerJobRequest$outputLocation": "

Specifies the location of the output file for the transformation. The location consists of an Amazon S3 bucket and prefix.

", + "TestParsingRequest$inputFile": "

Specifies an S3Location object, which contains the Amazon S3 bucket and prefix for the location of the input file.

" + } + }, + "S3LocationList": { + "base": null, + "refs": { + "GetTransformerJobResponse$outputFiles": "

Returns the location for the output files. If the caller specified a directory for the output, then this contains the full path to the output file, including the file name generated by the service.

" + } + }, + "ServiceQuotaExceededException": { + "base": "

Occurs when the calling command attempts to exceed one of the service quotas, for example trying to create a capability when you already have the maximum number of capabilities allowed.

", + "refs": { + } + }, + "StartTransformerJobRequest": { + "base": null, + "refs": { + } + }, + "StartTransformerJobResponse": { + "base": null, + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "CreateCapabilityRequest$clientToken": "

Reserved for future use.

", + "CreatePartnershipRequest$clientToken": "

Reserved for future use.

", + "CreateProfileRequest$clientToken": "

Reserved for future use.

", + "CreateTransformerRequest$clientToken": "

Reserved for future use.

", + "GetTransformerJobResponse$message": "

Returns an optional error message, which gets populated when the job is not run successfully.

", + "ServiceQuotaExceededException$resourceId": "

The ID for the resource that exceeded the quota, which caused the exception.

", + "ServiceQuotaExceededException$resourceType": "

The resource type (profile, partnership, transformer, or capability) that exceeded the quota, which caused the exception.

", + "ServiceQuotaExceededException$serviceCode": "

The code responsible for exceeding the quota, which caused the exception.

", + "ServiceQuotaExceededException$quotaCode": "

The quota that was exceeded, which caused the exception.

", + "StartTransformerJobRequest$clientToken": "

Reserved for future use.

", + "TestMappingResponse$mappedFileContent": "

Returns a string for the mapping that can be used to identify the mapping. Similar to a fingerprint

", + "TestParsingResponse$parsedFileContent": "

Returns the contents of the input file being tested, parsed according to the specified EDI (electronic data interchange) type.

" + } + }, + "Tag": { + "base": "

Creates a key-value pair for a specific resource. Tags are metadata that you can use to search for and group a resource for various purposes. You can apply tags to capabilities, partnerships, profiles and transformers. A tag key can take more than one value. For example, to group capabilities for accounting purposes, you might create a tag called Group and assign the values Research and Accounting to that group.

", + "refs": { + "TagList$member": null + } + }, + "TagKey": { + "base": null, + "refs": { + "Tag$Key": "

Specifies the name assigned to the tag that you create.

", + "TagKeyList$member": null + } + }, + "TagKeyList": { + "base": null, + "refs": { + "UntagResourceRequest$TagKeys": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

" + } + }, + "TagList": { + "base": null, + "refs": { + "CreateCapabilityRequest$tags": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

", + "CreatePartnershipRequest$tags": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

", + "CreateProfileRequest$tags": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

", + "CreateTransformerRequest$tags": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

", + "ListTagsForResourceResponse$Tags": "

Returns the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

", + "TagResourceRequest$Tags": "

Specifies the key-value pairs assigned to ARNs that you can use to group and search for resources by type. You can attach this metadata to resources (capabilities, partnerships, and so on) for any purpose.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "Tag$Value": "

Contains one or more values that you assigned to the key name that you create.

" + } + }, + "TestMappingInputFileContent": { + "base": null, + "refs": { + "TestMappingRequest$inputFileContent": "

Specify the EDI (electronic data interchange) file that is used as input for the transform.

" + } + }, + "TestMappingRequest": { + "base": null, + "refs": { + } + }, + "TestMappingResponse": { + "base": null, + "refs": { + } + }, + "TestParsingRequest": { + "base": null, + "refs": { + } + }, + "TestParsingResponse": { + "base": null, + "refs": { + } + }, + "ThrottlingException": { + "base": "

The request was denied due to throttling: the data speed and rendering may be limited depending on various parameters and conditions.

", + "refs": { + } + }, + "TradingPartnerId": { + "base": null, + "refs": { + "CreatePartnershipResponse$tradingPartnerId": "

Returns the unique, system-generated identifier for a trading partner.

", + "GetPartnershipResponse$tradingPartnerId": "

Returns the unique identifier for the partner for this partnership.

", + "PartnershipSummary$tradingPartnerId": "

Returns the unique, system-generated identifier for a trading partner.

", + "UpdatePartnershipResponse$tradingPartnerId": "

Returns the unique, system-generated identifier for a trading partner.

" + } + }, + "TransformerId": { + "base": null, + "refs": { + "CreateTransformerResponse$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "DeleteTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "EdiConfiguration$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "GetTransformerJobRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "GetTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "GetTransformerResponse$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "StartTransformerJobRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "TransformerSummary$transformerId": "

Returns the system-assigned unique identifier for the transformer.

", + "UpdateTransformerRequest$transformerId": "

Specifies the system-assigned unique identifier for the transformer.

", + "UpdateTransformerResponse$transformerId": "

Returns the system-assigned unique identifier for the transformer.

" + } + }, + "TransformerJobId": { + "base": null, + "refs": { + "GetTransformerJobRequest$transformerJobId": "

Specifies the unique, system-generated identifier for a transformer run.

", + "StartTransformerJobResponse$transformerJobId": "

Returns the unique, system-generated identifier for a transformer run.

" + } + }, + "TransformerJobStatus": { + "base": null, + "refs": { + "GetTransformerJobResponse$status": "

Returns the current state of the transformer job, either running, succeeded, or failed.

" + } + }, + "TransformerList": { + "base": null, + "refs": { + "ListTransformersResponse$transformers": "

Returns an array of one or more transformer objects.

For each transformer, a TransformerSummary object is returned. The TransformerSummary contains all the details for a specific transformer.

" + } + }, + "TransformerName": { + "base": null, + "refs": { + "CreateTransformerRequest$name": "

Specifies the name of the transformer, used to identify it.

", + "CreateTransformerResponse$name": "

Returns the name of the transformer, used to identify it.

", + "GetTransformerResponse$name": "

Returns the name of the transformer, used to identify it.

", + "TransformerSummary$name": "

Returns the descriptive name for the transformer.

", + "UpdateTransformerRequest$name": "

Specify a new name for the transformer, if you want to update it.

", + "UpdateTransformerResponse$name": "

Returns the name of the transformer.

" + } + }, + "TransformerStatus": { + "base": null, + "refs": { + "CreateTransformerResponse$status": "

Returns the state of the newly created transformer. The transformer can be either active or inactive. For the transformer to be used in a capability, its status must active.

", + "GetTransformerResponse$status": "

Returns the state of the newly created transformer. The transformer can be either active or inactive. For the transformer to be used in a capability, its status must active.

", + "TransformerSummary$status": "

Returns the state of the newly created transformer. The transformer can be either active or inactive. For the transformer to be used in a capability, its status must active.

", + "UpdateTransformerRequest$status": "

Specifies the transformer's status. You can update the state of the transformer, from active to inactive, or inactive to active.

", + "UpdateTransformerResponse$status": "

Returns the state of the newly created transformer. The transformer can be either active or inactive. For the transformer to be used in a capability, its status must active.

" + } + }, + "TransformerSummary": { + "base": "

Contains the details for a transformer object. Transformers describe how to process the incoming EDI (electronic data interchange) documents, and extract the necessary information.

", + "refs": { + "TransformerList$member": null + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UpdateCapabilityRequest": { + "base": null, + "refs": { + } + }, + "UpdateCapabilityResponse": { + "base": null, + "refs": { + } + }, + "UpdatePartnershipRequest": { + "base": null, + "refs": { + } + }, + "UpdatePartnershipResponse": { + "base": null, + "refs": { + } + }, + "UpdateProfileRequest": { + "base": null, + "refs": { + } + }, + "UpdateProfileResponse": { + "base": null, + "refs": { + } + }, + "UpdateTransformerRequest": { + "base": null, + "refs": { + } + }, + "UpdateTransformerResponse": { + "base": null, + "refs": { + } + }, + "ValidationException": { + "base": "

Occurs when a B2BI object cannot be validated against a request from another object.

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

A structure that contains the X12 transaction set and version. The X12 structure is used when the system transforms an EDI (electronic data interchange) file.

", + "refs": { + "EdiType$x12Details": "

Returns the details for the EDI standard that is being used for the transformer. Currently, only X12 is supported. X12 is a set of standards and corresponding messages that define specific business documents.

" + } + }, + "X12TransactionSet": { + "base": null, + "refs": { + "X12Details$transactionSet": "

Returns an enumerated type where each value identifies an X12 transaction set. Transaction sets are maintained by the X12 Accredited Standards Committee.

" + } + }, + "X12Version": { + "base": null, + "refs": { + "X12Details$version": "

Returns the version to use for the specified X12 transaction set. Supported versions are 4010, 4030, and 5010.

" + } + } + } +} diff --git a/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json b/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json new file mode 100644 index 00000000000..8f4f45d0802 --- /dev/null +++ b/models/apis/b2bi/2022-06-23/endpoint-rule-set-1.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://b2bi.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/models/apis/b2bi/2022-06-23/endpoint-tests-1.json b/models/apis/b2bi/2022-06-23/endpoint-tests-1.json new file mode 100644 index 00000000000..6810661f7b3 --- /dev/null +++ b/models/apis/b2bi/2022-06-23/endpoint-tests-1.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi-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://b2bi-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://b2bi.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://b2bi.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://b2bi-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://b2bi-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://b2bi.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://b2bi.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://b2bi-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://b2bi-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://b2bi.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://b2bi.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://b2bi-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://b2bi.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://b2bi-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://b2bi.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/b2bi/2022-06-23/examples-1.json b/models/apis/b2bi/2022-06-23/examples-1.json new file mode 100644 index 00000000000..b3238951f22 --- /dev/null +++ b/models/apis/b2bi/2022-06-23/examples-1.json @@ -0,0 +1,714 @@ +{ + "version": "1.0", + "examples": { + "CreateCapability": [ + { + "input": { + "name": "b2biexample", + "type": "edi", + "clientToken": "foo", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "tags": [ + { + "Key": "capabilityKey1", + "Value": "capabilityValue1" + } + ] + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ] + }, + "id": "example-1", + "title": "Sample CreateCapability call" + } + ], + "CreatePartnership": [ + { + "input": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "clientToken": "foo", + "email": "john@example.com", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tags": [ + { + "Key": "sampleKey1", + "Value": "sampleValue1" + } + ] + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-60fbc37c87f04fce9", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample CreatePartnership call" + } + ], + "CreateProfile": [ + { + "input": { + "name": "Shipping Profile", + "businessName": "John's Shipping", + "clientToken": "foo", + "email": "john@example.com", + "logging": "ENABLED", + "phone": "5555555555", + "tags": [ + { + "Key": "sampleKey", + "Value": "sampleValue" + } + ] + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample CreateProfile call" + } + ], + "CreateTransformer": [ + { + "input": { + "name": "transformJSON", + "clientToken": "foo", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "{}", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "tags": [ + { + "Key": "sampleKey", + "Value": "sampleValue" + } + ] + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:123456789012:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample CreateTransformer call" + } + ], + "DeleteCapability": [ + { + "input": { + "capabilityId": "ca-963a8121e4fc4e348" + }, + "id": "example-1", + "title": "Sample DeleteCapabilty call" + } + ], + "DeletePartnership": [ + { + "input": { + "partnershipId": "ps-219fa02f5b4242af8" + }, + "id": "example-1", + "title": "Sample DeletePartnership call" + } + ], + "DeleteProfile": [ + { + "input": { + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample DeleteProfile call" + } + ], + "DeleteTransformer": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample DeleteTransformer call" + } + ], + "GetCapability": [ + { + "input": { + "capabilityId": "ca-963a8121e4fc4e348" + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "modifiedAt": "2023-11-02T21:51:05.504Z" + }, + "id": "example-1", + "title": "Sample GetCapabilty call" + } + ], + "GetPartnership": [ + { + "input": { + "partnershipId": "ps-219fa02f5b4242af8" + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-219fa02f5b4242af8", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample GetPartnership call" + } + ], + "GetProfile": [ + { + "input": { + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample GetProfile call" + } + ], + "GetTransformer": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:123456789012:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample GetTransformer call" + } + ], + "GetTransformerJob": [ + { + "input": { + "transformerId": "tr-974c129999f84d8c9", + "transformerJobId": "tj-vpYxfV7yQOqjMSYllEslLw" + }, + "output": { + "message": "Transformed, writing output", + "outputFiles": [ + { + "key": "output/sample-214.edi.2023-11-01T10:44:03.353Z.json", + "bucketName": "gt-edi-test" + } + ], + "status": "succeeded" + }, + "id": "example-1", + "title": "Sample GetTransformerJob call" + } + ], + "ListCapabilities": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "capabilities": [ + { + "name": "b2biexample", + "type": "edi", + "capabilityId": "ca-963a8121e4fc4e348", + "createdAt": "2023-11-01T21:51:05.504Z", + "modifiedAt": "2023-11-01T21:51:05.504Z" + } + ], + "nextToken": "foo" + }, + "id": "example-1", + "title": "Sample ListCapabilities call" + } + ], + "ListPartnerships": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo", + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "nextToken": "string", + "partnerships": [ + { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipId": "ps-219fa02f5b4242af8", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + } + ] + }, + "id": "example-1", + "title": "Sample ListPartnerships call" + } + ], + "ListProfiles": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "nextToken": "foo", + "profiles": [ + { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "profileId": "p-60fbc37c87f04fce9" + } + ] + }, + "id": "example-1", + "title": "Sample ListProfiles call" + } + ], + "ListTagsForResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9" + }, + "output": { + "Tags": [ + { + "Key": "sampleKey", + "Value": "SampleValue" + } + ] + }, + "id": "example-1", + "title": "Sample ListTagsForResources call" + } + ], + "ListTransformers": [ + { + "input": { + "maxResults": 50, + "nextToken": "foo" + }, + "output": { + "nextToken": "foo", + "transformers": [ + { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerId": "tr-974c129999f84d8c9" + } + ] + }, + "id": "example-1", + "title": "Sample ListTransformers call" + } + ], + "StartTransformerJob": [ + { + "input": { + "clientToken": "foo", + "inputFile": { + "key": "input/inputFile.txt", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "transformerJobId": "tj-vpYxfV7yQOqjMSYllEslLw" + }, + "id": "example-1", + "title": "Sample StartTransformerJob call" + } + ], + "TagResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "Tags": [ + { + "Key": "sampleKey", + "Value": "SampleValue" + } + ] + }, + "id": "example-1", + "title": "Sample TagResource call" + } + ], + "TestMapping": [ + { + "input": { + "fileFormat": "JSON", + "inputFileContent": "Sample file content", + "mappingTemplate": "$" + }, + "output": { + "mappedFileContent": "Sample file content" + }, + "id": "example-1", + "title": "Sample TestMapping call" + } + ], + "TestParsing": [ + { + "input": { + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "inputFile": { + "key": "sampleFile.txt", + "bucketName": "test-bucket" + } + }, + "output": { + "parsedFileContent": "Sample parsed file content" + }, + "id": "example-1", + "title": "Sample TestParsing call" + } + ], + "UntagResource": [ + { + "input": { + "ResourceARN": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "TagKeys": [ + "sampleKey" + ] + }, + "id": "example-1", + "title": "Sample UntagResource call" + } + ], + "UpdateCapability": [ + { + "input": { + "name": "b2biexample", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ] + }, + "output": { + "name": "b2biexample", + "type": "edi", + "capabilityArn": "arn:aws:b2bi:us-west-2:123456789012:capability/ca-963a8121e4fc4e348", + "capabilityId": "ca-963a8121e4fc4e348", + "configuration": { + "edi": { + "type": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "inputLocation": { + "key": "input/", + "bucketName": "test-bucket" + }, + "outputLocation": { + "key": "output/", + "bucketName": "test-bucket" + }, + "transformerId": "tr-9a893cf536df4658b" + } + }, + "createdAt": "2023-11-01T21:51:05.504Z", + "instructionsDocuments": [ + { + "key": "instructiondoc.txt", + "bucketName": "test-bucket" + } + ], + "modifiedAt": "2023-11-01T21:51:05.504Z" + }, + "id": "example-1", + "title": "Sample UpdateCapability call" + } + ], + "UpdatePartnership": [ + { + "input": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "partnershipId": "ps-219fa02f5b4242af8" + }, + "output": { + "name": "b2bipartner", + "capabilities": [ + "ca-963a8121e4fc4e348" + ], + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "partnershipArn": "arn:aws:b2bi:us-west-2:123456789012:partnership/ps-60fbc37c87f04fce9", + "partnershipId": "ps-219fa02f5b4242af8", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9", + "tradingPartnerId": "tp-2a17ca447f6f4a8a8" + }, + "id": "example-1", + "title": "Sample UpdatePartnership call" + } + ], + "UpdateProfile": [ + { + "input": { + "name": "Shipping Profile", + "businessName": "John's Shipping", + "email": "john@example.com", + "phone": "5555555555", + "profileId": "p-60fbc37c87f04fce9" + }, + "output": { + "name": "Shipping Profile", + "businessName": "John's Trucking", + "createdAt": "2023-11-01T21:51:05.504Z", + "email": "john@example.com", + "logGroupName": "b2bi/p-60fbc37c87f04fce9-Logs", + "logging": "ENABLED", + "modifiedAt": "2023-11-02T21:51:05.504Z", + "phone": "5555555555", + "profileArn": "arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9", + "profileId": "p-60fbc37c87f04fce9" + }, + "id": "example-1", + "title": "Sample UpdateProfile call" + } + ], + "UpdateTransformer": [ + { + "input": { + "name": "transformJSON", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "{}", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerId": "tr-974c129999f84d8c9" + }, + "output": { + "name": "transformJSON", + "createdAt": "2023-11-01T21:51:05.504Z", + "ediType": { + "x12Details": { + "version": "VERSION_4010", + "transactionSet": "X12_110" + } + }, + "fileFormat": "JSON", + "mappingTemplate": "$", + "modifiedAt": "2023-11-01T21:51:05.504Z", + "sampleDocument": "s3://test-bucket/sampleDoc.txt", + "status": "inactive", + "transformerArn": "arn:aws:b2bi:us-west-2:607686414464:transformer/tr-974c129999f84d8c9", + "transformerId": "tr-974c129999f84d8c9" + }, + "id": "example-1", + "title": "Sample UpdateTransformer call" + } + ] + } +} diff --git a/models/apis/b2bi/2022-06-23/paginators-1.json b/models/apis/b2bi/2022-06-23/paginators-1.json new file mode 100644 index 00000000000..5f3b0d242ce --- /dev/null +++ b/models/apis/b2bi/2022-06-23/paginators-1.json @@ -0,0 +1,28 @@ +{ + "pagination": { + "ListCapabilities": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "capabilities" + }, + "ListPartnerships": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "partnerships" + }, + "ListProfiles": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "profiles" + }, + "ListTransformers": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "transformers" + } + } +} diff --git a/models/apis/backup/2018-11-15/api-2.json b/models/apis/backup/2018-11-15/api-2.json index c094b764c8f..fad100ba0c0 100644 --- a/models/apis/backup/2018-11-15/api-2.json +++ b/models/apis/backup/2018-11-15/api-2.json @@ -148,6 +148,44 @@ ], "idempotent":true }, + "CreateRestoreTestingPlan":{ + "name":"CreateRestoreTestingPlan", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans", + "responseCode":201 + }, + "input":{"shape":"CreateRestoreTestingPlanInput"}, + "output":{"shape":"CreateRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"AlreadyExistsException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"LimitExceededException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "CreateRestoreTestingSelection":{ + "name":"CreateRestoreTestingSelection", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections", + "responseCode":201 + }, + "input":{"shape":"CreateRestoreTestingSelectionInput"}, + "output":{"shape":"CreateRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"AlreadyExistsException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"LimitExceededException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "DeleteBackupPlan":{ "name":"DeleteBackupPlan", "http":{ @@ -287,6 +325,34 @@ ], "idempotent":true }, + "DeleteRestoreTestingPlan":{ + "name":"DeleteRestoreTestingPlan", + "http":{ + "method":"DELETE", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":204 + }, + "input":{"shape":"DeleteRestoreTestingPlanInput"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "DeleteRestoreTestingSelection":{ + "name":"DeleteRestoreTestingSelection", + "http":{ + "method":"DELETE", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":204 + }, + "input":{"shape":"DeleteRestoreTestingSelectionInput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "DescribeBackupJob":{ "name":"DescribeBackupJob", "http":{ @@ -628,6 +694,65 @@ ], "idempotent":true }, + "GetRestoreJobMetadata":{ + "name":"GetRestoreJobMetadata", + "http":{ + "method":"GET", + "requestUri":"/restore-jobs/{restoreJobId}/metadata" + }, + "input":{"shape":"GetRestoreJobMetadataInput"}, + "output":{"shape":"GetRestoreJobMetadataOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingInferredMetadata":{ + "name":"GetRestoreTestingInferredMetadata", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/inferred-metadata", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingInferredMetadataInput"}, + "output":{"shape":"GetRestoreTestingInferredMetadataOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingPlan":{ + "name":"GetRestoreTestingPlan", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingPlanInput"}, + "output":{"shape":"GetRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "GetRestoreTestingSelection":{ + "name":"GetRestoreTestingSelection", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":200 + }, + "input":{"shape":"GetRestoreTestingSelectionInput"}, + "output":{"shape":"GetRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "GetSupportedResourceTypes":{ "name":"GetSupportedResourceTypes", "http":{ @@ -929,6 +1054,50 @@ ], "idempotent":true }, + "ListRestoreJobsByProtectedResource":{ + "name":"ListRestoreJobsByProtectedResource", + "http":{ + "method":"GET", + "requestUri":"/resources/{resourceArn}/restore-jobs/" + }, + "input":{"shape":"ListRestoreJobsByProtectedResourceInput"}, + "output":{"shape":"ListRestoreJobsByProtectedResourceOutput"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "ListRestoreTestingPlans":{ + "name":"ListRestoreTestingPlans", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans", + "responseCode":200 + }, + "input":{"shape":"ListRestoreTestingPlansInput"}, + "output":{"shape":"ListRestoreTestingPlansOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ServiceUnavailableException"} + ] + }, + "ListRestoreTestingSelections":{ + "name":"ListRestoreTestingSelections", + "http":{ + "method":"GET", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections", + "responseCode":200 + }, + "input":{"shape":"ListRestoreTestingSelectionsInput"}, + "output":{"shape":"ListRestoreTestingSelectionsOutput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ] + }, "ListTags":{ "name":"ListTags", "http":{ @@ -991,6 +1160,23 @@ ], "idempotent":true }, + "PutRestoreValidationResult":{ + "name":"PutRestoreValidationResult", + "http":{ + "method":"PUT", + "requestUri":"/restore-jobs/{restoreJobId}/validations", + "responseCode":204 + }, + "input":{"shape":"PutRestoreValidationResultInput"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"InvalidRequestException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, "StartBackupJob":{ "name":"StartBackupJob", "http":{ @@ -1201,6 +1387,42 @@ {"shape":"ConflictException"} ], "idempotent":true + }, + "UpdateRestoreTestingPlan":{ + "name":"UpdateRestoreTestingPlan", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}", + "responseCode":200 + }, + "input":{"shape":"UpdateRestoreTestingPlanInput"}, + "output":{"shape":"UpdateRestoreTestingPlanOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true + }, + "UpdateRestoreTestingSelection":{ + "name":"UpdateRestoreTestingSelection", + "http":{ + "method":"PUT", + "requestUri":"/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + "responseCode":200 + }, + "input":{"shape":"UpdateRestoreTestingSelectionInput"}, + "output":{"shape":"UpdateRestoreTestingSelectionOutput"}, + "errors":[ + {"shape":"ConflictException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"MissingParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceUnavailableException"} + ], + "idempotent":true } }, "shapes":{ @@ -1266,6 +1488,7 @@ "ParentJobId":{"shape":"string"}, "IsParent":{"shape":"boolean"}, "ResourceName":{"shape":"string"}, + "InitiationDate":{"shape":"timestamp"}, "MessageCategory":{"shape":"string"} } }, @@ -1903,6 +2126,59 @@ "CreationTime":{"shape":"timestamp"} } }, + "CreateRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlan"], + "members":{ + "CreatorRequestId":{"shape":"String"}, + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForCreate"}, + "Tags":{"shape":"SensitiveStringMap"} + } + }, + "CreateRestoreTestingPlanOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"} + } + }, + "CreateRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelection" + ], + "members":{ + "CreatorRequestId":{"shape":"String"}, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForCreate"} + } + }, + "CreateRestoreTestingSelectionOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"} + } + }, "CronExpression":{"type":"string"}, "DateRange":{ "type":"structure", @@ -2039,6 +2315,36 @@ } } }, + "DeleteRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "DeleteRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, "DependencyFailureException":{ "type":"structure", "members":{ @@ -2089,6 +2395,7 @@ "NumberOfChildJobs":{"shape":"Long"}, "ChildJobsInState":{"shape":"BackupJobChildJobsInState"}, "ResourceName":{"shape":"string"}, + "InitiationDate":{"shape":"timestamp"}, "MessageCategory":{"shape":"string"} } }, @@ -2194,7 +2501,12 @@ "ResourceArn":{"shape":"ARN"}, "ResourceType":{"shape":"ResourceType"}, "LastBackupTime":{"shape":"timestamp"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "LastBackupVaultArn":{"shape":"ARN"}, + "LastRecoveryPointArn":{"shape":"ARN"}, + "LatestRestoreExecutionTimeMinutes":{"shape":"Long"}, + "LatestRestoreJobCreationDate":{"shape":"timestamp"}, + "LatestRestoreRecoveryPointCreationDate":{"shape":"timestamp"} } }, "DescribeRecoveryPointInput":{ @@ -2321,7 +2633,13 @@ "IamRoleArn":{"shape":"IAMRoleArn"}, "ExpectedCompletionTimeMinutes":{"shape":"Long"}, "CreatedResourceArn":{"shape":"ARN"}, - "ResourceType":{"shape":"ResourceType"} + "ResourceType":{"shape":"ResourceType"}, + "RecoveryPointCreationDate":{"shape":"timestamp"}, + "CreatedBy":{"shape":"RestoreJobCreator"}, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"}, + "DeletionStatus":{"shape":"RestoreDeletionStatus"}, + "DeletionStatusMessage":{"shape":"string"} } }, "DisassociateRecoveryPointFromParentInput":{ @@ -2606,7 +2924,101 @@ "members":{ "BackupVaultArn":{"shape":"ARN"}, "RecoveryPointArn":{"shape":"ARN"}, - "RestoreMetadata":{"shape":"Metadata"} + "RestoreMetadata":{"shape":"Metadata"}, + "ResourceType":{"shape":"ResourceType"} + } + }, + "GetRestoreJobMetadataInput":{ + "type":"structure", + "required":["RestoreJobId"], + "members":{ + "RestoreJobId":{ + "shape":"RestoreJobId", + "location":"uri", + "locationName":"restoreJobId" + } + } + }, + "GetRestoreJobMetadataOutput":{ + "type":"structure", + "members":{ + "RestoreJobId":{"shape":"RestoreJobId"}, + "Metadata":{"shape":"Metadata"} + } + }, + "GetRestoreTestingInferredMetadataInput":{ + "type":"structure", + "required":[ + "BackupVaultName", + "RecoveryPointArn" + ], + "members":{ + "BackupVaultAccountId":{ + "shape":"String", + "location":"querystring", + "locationName":"BackupVaultAccountId" + }, + "BackupVaultName":{ + "shape":"String", + "location":"querystring", + "locationName":"BackupVaultName" + }, + "RecoveryPointArn":{ + "shape":"String", + "location":"querystring", + "locationName":"RecoveryPointArn" + } + } + }, + "GetRestoreTestingInferredMetadataOutput":{ + "type":"structure", + "required":["InferredMetadata"], + "members":{ + "InferredMetadata":{"shape":"stringMap"} + } + }, + "GetRestoreTestingPlanInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "GetRestoreTestingPlanOutput":{ + "type":"structure", + "required":["RestoreTestingPlan"], + "members":{ + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForGet"} + } + }, + "GetRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, + "GetRestoreTestingSelectionOutput":{ + "type":"structure", + "required":["RestoreTestingSelection"], + "members":{ + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForGet"} } }, "GetSupportedResourceTypesOutput":{ @@ -2655,6 +3067,21 @@ "exception":true }, "IsEnabled":{"type":"boolean"}, + "KeyValue":{ + "type":"structure", + "required":[ + "Key", + "Value" + ], + "members":{ + "Key":{"shape":"String"}, + "Value":{"shape":"String"} + } + }, + "KeyValueList":{ + "type":"list", + "member":{"shape":"KeyValue"} + }, "LegalHold":{ "type":"structure", "members":{ @@ -2684,7 +3111,8 @@ "type":"structure", "members":{ "MoveToColdStorageAfterDays":{"shape":"Long"}, - "DeleteAfterDays":{"shape":"Long"} + "DeleteAfterDays":{"shape":"Long"}, + "OptInToArchiveForSupportedResources":{"shape":"Boolean"} } }, "LimitExceededException":{ @@ -3413,6 +3841,49 @@ "NextToken":{"shape":"string"} } }, + "ListRestoreJobsByProtectedResourceInput":{ + "type":"structure", + "required":["ResourceArn"], + "members":{ + "ResourceArn":{ + "shape":"ARN", + "location":"uri", + "locationName":"resourceArn" + }, + "ByStatus":{ + "shape":"RestoreJobStatus", + "location":"querystring", + "locationName":"status" + }, + "ByRecoveryPointCreationDateAfter":{ + "shape":"timestamp", + "location":"querystring", + "locationName":"recoveryPointCreationDateAfter" + }, + "ByRecoveryPointCreationDateBefore":{ + "shape":"timestamp", + "location":"querystring", + "locationName":"recoveryPointCreationDateBefore" + }, + "NextToken":{ + "shape":"string", + "location":"querystring", + "locationName":"nextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + } + } + }, + "ListRestoreJobsByProtectedResourceOutput":{ + "type":"structure", + "members":{ + "RestoreJobs":{"shape":"RestoreJobsList"}, + "NextToken":{"shape":"string"} + } + }, "ListRestoreJobsInput":{ "type":"structure", "members":{ @@ -3455,6 +3926,11 @@ "shape":"timestamp", "location":"querystring", "locationName":"completeAfter" + }, + "ByRestoreTestingPlanArn":{ + "shape":"ARN", + "location":"querystring", + "locationName":"restoreTestingPlanArn" } } }, @@ -3465,6 +3941,70 @@ "NextToken":{"shape":"string"} } }, + "ListRestoreTestingPlansInput":{ + "type":"structure", + "members":{ + "MaxResults":{ + "shape":"ListRestoreTestingPlansInputMaxResultsInteger", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListRestoreTestingPlansInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListRestoreTestingPlansOutput":{ + "type":"structure", + "required":["RestoreTestingPlans"], + "members":{ + "NextToken":{"shape":"String"}, + "RestoreTestingPlans":{"shape":"RestoreTestingPlans"} + } + }, + "ListRestoreTestingSelectionsInput":{ + "type":"structure", + "required":["RestoreTestingPlanName"], + "members":{ + "MaxResults":{ + "shape":"ListRestoreTestingSelectionsInputMaxResultsInteger", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"String", + "location":"querystring", + "locationName":"NextToken" + }, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "ListRestoreTestingSelectionsInputMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":1000, + "min":1 + }, + "ListRestoreTestingSelectionsOutput":{ + "type":"structure", + "required":["RestoreTestingSelections"], + "members":{ + "NextToken":{"shape":"String"}, + "RestoreTestingSelections":{"shape":"RestoreTestingSelections"} + } + }, "ListTagsInput":{ "type":"structure", "required":["ResourceArn"], @@ -3531,7 +4071,16 @@ "ResourceArn":{"shape":"ARN"}, "ResourceType":{"shape":"ResourceType"}, "LastBackupTime":{"shape":"timestamp"}, - "ResourceName":{"shape":"string"} + "ResourceName":{"shape":"string"}, + "LastBackupVaultArn":{"shape":"ARN"}, + "LastRecoveryPointArn":{"shape":"ARN"} + } + }, + "ProtectedResourceConditions":{ + "type":"structure", + "members":{ + "StringEquals":{"shape":"KeyValueList"}, + "StringNotEquals":{"shape":"KeyValueList"} } }, "ProtectedResourcesList":{ @@ -3581,6 +4130,22 @@ "BackupVaultEvents":{"shape":"BackupVaultEvents"} } }, + "PutRestoreValidationResultInput":{ + "type":"structure", + "required":[ + "RestoreJobId", + "ValidationStatus" + ], + "members":{ + "RestoreJobId":{ + "shape":"RestoreJobId", + "location":"uri", + "locationName":"restoreJobId" + }, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"} + } + }, "RecoveryPointByBackupVault":{ "type":"structure", "members":{ @@ -3787,6 +4352,20 @@ "type":"list", "member":{"shape":"ResourceType"} }, + "RestoreDeletionStatus":{ + "type":"string", + "enum":[ + "DELETING", + "FAILED", + "SUCCESSFUL" + ] + }, + "RestoreJobCreator":{ + "type":"structure", + "members":{ + "RestoreTestingPlanArn":{"shape":"ARN"} + } + }, "RestoreJobId":{"type":"string"}, "RestoreJobState":{ "type":"string", @@ -3846,9 +4425,198 @@ "IamRoleArn":{"shape":"IAMRoleArn"}, "ExpectedCompletionTimeMinutes":{"shape":"Long"}, "CreatedResourceArn":{"shape":"ARN"}, - "ResourceType":{"shape":"ResourceType"} + "ResourceType":{"shape":"ResourceType"}, + "RecoveryPointCreationDate":{"shape":"timestamp"}, + "CreatedBy":{"shape":"RestoreJobCreator"}, + "ValidationStatus":{"shape":"RestoreValidationStatus"}, + "ValidationStatusMessage":{"shape":"string"}, + "DeletionStatus":{"shape":"RestoreDeletionStatus"}, + "DeletionStatusMessage":{"shape":"string"} + } + }, + "RestoreTestingPlanForCreate":{ + "type":"structure", + "required":[ + "RecoveryPointSelection", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} } }, + "RestoreTestingPlanForGet":{ + "type":"structure", + "required":[ + "CreationTime", + "RecoveryPointSelection", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "CreatorRequestId":{"shape":"String"}, + "LastExecutionTime":{"shape":"Timestamp"}, + "LastUpdateTime":{"shape":"Timestamp"}, + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlanForList":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "ScheduleExpression" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "LastExecutionTime":{"shape":"Timestamp"}, + "LastUpdateTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlanForUpdate":{ + "type":"structure", + "members":{ + "RecoveryPointSelection":{"shape":"RestoreTestingRecoveryPointSelection"}, + "ScheduleExpression":{"shape":"String"}, + "ScheduleExpressionTimezone":{"shape":"String"}, + "StartWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingPlans":{ + "type":"list", + "member":{"shape":"RestoreTestingPlanForList"} + }, + "RestoreTestingRecoveryPointSelection":{ + "type":"structure", + "members":{ + "Algorithm":{"shape":"RestoreTestingRecoveryPointSelectionAlgorithm"}, + "ExcludeVaults":{"shape":"stringList"}, + "IncludeVaults":{"shape":"stringList"}, + "RecoveryPointTypes":{"shape":"RestoreTestingRecoveryPointTypeList"}, + "SelectionWindowDays":{"shape":"integer"} + } + }, + "RestoreTestingRecoveryPointSelectionAlgorithm":{ + "type":"string", + "enum":[ + "LATEST_WITHIN_WINDOW", + "RANDOM_WITHIN_WINDOW" + ] + }, + "RestoreTestingRecoveryPointType":{ + "type":"string", + "enum":[ + "CONTINUOUS", + "SNAPSHOT" + ] + }, + "RestoreTestingRecoveryPointTypeList":{ + "type":"list", + "member":{"shape":"RestoreTestingRecoveryPointType"} + }, + "RestoreTestingSelectionForCreate":{ + "type":"structure", + "required":[ + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingSelectionName" + ], + "members":{ + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForGet":{ + "type":"structure", + "required":[ + "CreationTime", + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "CreatorRequestId":{"shape":"String"}, + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForList":{ + "type":"structure", + "required":[ + "CreationTime", + "IamRoleArn", + "ProtectedResourceType", + "RestoreTestingPlanName", + "RestoreTestingSelectionName" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceType":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelectionForUpdate":{ + "type":"structure", + "members":{ + "IamRoleArn":{"shape":"String"}, + "ProtectedResourceArns":{"shape":"stringList"}, + "ProtectedResourceConditions":{"shape":"ProtectedResourceConditions"}, + "RestoreMetadataOverrides":{"shape":"SensitiveStringMap"}, + "ValidationWindowHours":{"shape":"integer"} + } + }, + "RestoreTestingSelections":{ + "type":"list", + "member":{"shape":"RestoreTestingSelectionForList"} + }, + "RestoreValidationStatus":{ + "type":"string", + "enum":[ + "FAILED", + "SUCCESSFUL", + "TIMED_OUT", + "VALIDATING" + ] + }, + "SensitiveStringMap":{ + "type":"map", + "key":{"shape":"String"}, + "value":{"shape":"String"}, + "sensitive":true + }, "ServiceUnavailableException":{ "type":"structure", "members":{ @@ -3974,6 +4742,7 @@ "DELETED" ] }, + "String":{"type":"string"}, "TagKey":{"type":"string"}, "TagKeyList":{ "type":"list", @@ -4002,6 +4771,7 @@ "value":{"shape":"TagValue"}, "sensitive":true }, + "Timestamp":{"type":"timestamp"}, "Timezone":{"type":"string"}, "UntagResourceInput":{ "type":"structure", @@ -4136,6 +4906,74 @@ "CreationTime":{"shape":"timestamp"} } }, + "UpdateRestoreTestingPlanInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlan", + "RestoreTestingPlanName" + ], + "members":{ + "RestoreTestingPlan":{"shape":"RestoreTestingPlanForUpdate"}, + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + } + } + }, + "UpdateRestoreTestingPlanOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "UpdateTime" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "UpdateTime":{"shape":"Timestamp"} + } + }, + "UpdateRestoreTestingSelectionInput":{ + "type":"structure", + "required":[ + "RestoreTestingPlanName", + "RestoreTestingSelection", + "RestoreTestingSelectionName" + ], + "members":{ + "RestoreTestingPlanName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingPlanName" + }, + "RestoreTestingSelection":{"shape":"RestoreTestingSelectionForUpdate"}, + "RestoreTestingSelectionName":{ + "shape":"String", + "location":"uri", + "locationName":"RestoreTestingSelectionName" + } + } + }, + "UpdateRestoreTestingSelectionOutput":{ + "type":"structure", + "required":[ + "CreationTime", + "RestoreTestingPlanArn", + "RestoreTestingPlanName", + "RestoreTestingSelectionName", + "UpdateTime" + ], + "members":{ + "CreationTime":{"shape":"Timestamp"}, + "RestoreTestingPlanArn":{"shape":"String"}, + "RestoreTestingPlanName":{"shape":"String"}, + "RestoreTestingSelectionName":{"shape":"String"}, + "UpdateTime":{"shape":"Timestamp"} + } + }, "VaultNames":{ "type":"list", "member":{"shape":"string"} diff --git a/models/apis/backup/2018-11-15/docs-2.json b/models/apis/backup/2018-11-15/docs-2.json index 17bc48343c8..85cefa8f688 100644 --- a/models/apis/backup/2018-11-15/docs-2.json +++ b/models/apis/backup/2018-11-15/docs-2.json @@ -10,6 +10,8 @@ "CreateLegalHold": "

This action creates a legal hold on a recovery point (backup). A legal hold is a restraint on altering or deleting a backup until an authorized user cancels the legal hold. Any actions to delete or disassociate a recovery point will fail with an error if one or more active legal holds are on the recovery point.

", "CreateLogicallyAirGappedBackupVault": "

This request creates a logical container to where backups may be copied.

This request includes a name, the Region, the maximum number of retention days, the minimum number of retention days, and optionally can include tags and a creator request ID.

Do not include sensitive data, such as passport numbers, in the name of a backup vault.

", "CreateReportPlan": "

Creates a report plan. A report plan is a document that contains information about the contents of the report and where Backup will deliver it.

If you call CreateReportPlan with a plan that already exists, you receive an AlreadyExistsException exception.

", + "CreateRestoreTestingPlan": "

This is the first of two steps to create a restore testing plan; once this request is successful, finish the procedure with request CreateRestoreTestingSelection.

You must include the parameter RestoreTestingPlan. You may optionally include CreatorRequestId and Tags.

", + "CreateRestoreTestingSelection": "

This request can be sent after CreateRestoreTestingPlan request returns successfully. This is the second part of creating a resource testing plan, and it must be completed sequentially.

This consists of RestoreTestingSelectionName, ProtectedResourceType, and one of the following:

Each protected resource type can have one single value.

A restore testing selection can include a wildcard value (\"*\") for ProtectedResourceArns along with ProtectedResourceConditions. Alternatively, you can include up to 30 specific protected resource ARNs in ProtectedResourceArns.

Cannot select by both protected resource types AND specific ARNs. Request will fail if both are included.

", "DeleteBackupPlan": "

Deletes a backup plan. A backup plan can only be deleted after all associated selections of resources have been deleted. Deleting a backup plan deletes the current version of a backup plan. Previous versions, if any, will still exist.

", "DeleteBackupSelection": "

Deletes the resource selection associated with a backup plan that is specified by the SelectionId.

", "DeleteBackupVault": "

Deletes the backup vault identified by its name. A vault can be deleted only if it is empty.

", @@ -19,6 +21,8 @@ "DeleteFramework": "

Deletes the framework specified by a framework name.

", "DeleteRecoveryPoint": "

Deletes the recovery point specified by a recovery point ID.

If the recovery point ID belongs to a continuous backup, calling this endpoint deletes the existing continuous backup and stops future continuous backup.

When an IAM role's permissions are insufficient to call this API, the service sends back an HTTP 200 response with an empty HTTP body, but the recovery point is not deleted. Instead, it enters an EXPIRED state.

EXPIRED recovery points can be deleted with this API once the IAM role has the iam:CreateServiceLinkedRole action. To learn more about adding this role, see Troubleshooting manual deletions.

If the user or role is deleted or the permission within the role is removed, the deletion will not be successful and will enter an EXPIRED state.

", "DeleteReportPlan": "

Deletes the report plan specified by a report plan name.

", + "DeleteRestoreTestingPlan": "

This request deletes the specified restore testing plan.

Deletion can only successfully occur if all associated restore testing selections are deleted first.

", + "DeleteRestoreTestingSelection": "

Input the Restore Testing Plan name and Restore Testing Selection name.

All testing selections associated with a restore testing plan must be deleted before the restore testing plan can be deleted.

", "DescribeBackupJob": "

Returns backup job details for the specified BackupJobId.

", "DescribeBackupVault": "

Returns metadata about a backup vault specified by its name.

", "DescribeCopyJob": "

Returns metadata associated with creating a copy of a resource.

", @@ -41,6 +45,10 @@ "GetBackupVaultNotifications": "

Returns event notifications for the specified backup vault.

", "GetLegalHold": "

This action returns details for a specified legal hold. The details are the body of a legal hold in JSON format, in addition to metadata.

", "GetRecoveryPointRestoreMetadata": "

Returns a set of metadata key-value pairs that were used to create the backup.

", + "GetRestoreJobMetadata": "

This request returns the metadata for the specified restore job.

", + "GetRestoreTestingInferredMetadata": "

This request returns the minimal required set of metadata needed to start a restore job with secure default settings. BackupVaultName and RecoveryPointArn are required parameters. BackupVaultAccountId is an optional parameter.

", + "GetRestoreTestingPlan": "

Returns RestoreTestingPlan details for the specified RestoreTestingPlanName. The details are the body of a restore testing plan in JSON format, in addition to plan metadata.

", + "GetRestoreTestingSelection": "

Returns RestoreTestingSelection, which displays resources and elements of the restore testing plan.

", "GetSupportedResourceTypes": "

Returns the Amazon Web Services resource types supported by Backup.

", "ListBackupJobSummaries": "

This is a request for a summary of backup jobs created or running within the most recent 30 days. You can include parameters AccountID, State, ResourceType, MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results.

This request returns a summary that contains Region, Account, State, ResourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

", "ListBackupJobs": "

Returns a list of existing backup jobs for an authenticated account for the last 30 days. For a longer period of time, consider using these monitoring tools.

", @@ -62,10 +70,14 @@ "ListReportPlans": "

Returns a list of your report plans. For detailed information about a single report plan, use DescribeReportPlan.

", "ListRestoreJobSummaries": "

This request obtains a summary of restore jobs created or running within the the most recent 30 days. You can include parameters AccountID, State, ResourceType, AggregationPeriod, MaxResults, or NextToken to filter results.

This request returns a summary that contains Region, Account, State, RestourceType, MessageCategory, StartTime, EndTime, and Count of included jobs.

", "ListRestoreJobs": "

Returns a list of jobs that Backup initiated to restore a saved resource, including details about the recovery process.

", + "ListRestoreJobsByProtectedResource": "

This returns restore jobs that contain the specified protected resource.

You must include ResourceArn. You can optionally include NextToken, ByStatus, MaxResults, ByRecoveryPointCreationDateAfter , and ByRecoveryPointCreationDateBefore.

", + "ListRestoreTestingPlans": "

Returns a list of restore testing plans.

", + "ListRestoreTestingSelections": "

Returns a list of restore testing selections. Can be filtered by MaxResults and RestoreTestingPlanName.

", "ListTags": "

Returns a list of key-value pairs assigned to a target recovery point, backup plan, or backup vault.

ListTags only works for resource types that support full Backup management of their backups. Those resource types are listed in the \"Full Backup management\" section of the Feature availability by resource table.

", "PutBackupVaultAccessPolicy": "

Sets a resource-based policy that is used to manage access permissions on the target backup vault. Requires a backup vault name and an access policy document in JSON format.

", "PutBackupVaultLockConfiguration": "

Applies Backup Vault Lock to a backup vault, preventing attempts to delete any recovery point stored in or created in a backup vault. Vault Lock also prevents attempts to update the lifecycle policy that controls the retention period of any recovery point currently stored in a backup vault. If specified, Vault Lock enforces a minimum and maximum retention period for future backup and copy jobs that target a backup vault.

Backup Vault Lock has been assessed by Cohasset Associates for use in environments that are subject to SEC 17a-4, CFTC, and FINRA regulations. For more information about how Backup Vault Lock relates to these regulations, see the Cohasset Associates Compliance Assessment.

", "PutBackupVaultNotifications": "

Turns on notifications on a backup vault for the specified topic and events.

", + "PutRestoreValidationResult": "

This request allows you to send your independent self-run restore test validation results. RestoreJobId and ValidationStatus are required. Optionally, you can input a ValidationStatusMessage.

", "StartBackupJob": "

Starts an on-demand backup job for the specified resource.

", "StartCopyJob": "

Starts a job to create a one-time copy of the specified resource.

Does not support continuous backups.

", "StartReportJob": "

Starts an on-demand report job for the specified report plan.

", @@ -78,7 +90,9 @@ "UpdateGlobalSettings": "

Updates whether the Amazon Web Services account is opted in to cross-account backup. Returns an error if the account is not an Organizations management account. Use the DescribeGlobalSettings API to determine the current settings.

", "UpdateRecoveryPointLifecycle": "

Sets the transition lifecycle of a recovery point.

The lifecycle defines when a protected resource is transitioned to cold storage and when it expires. Backup transitions and expires backups automatically according to the lifecycle that you define.

Backups transitioned to cold storage must be stored in cold storage for a minimum of 90 days. Therefore, the “retention” setting must be 90 days greater than the “transition to cold after days” setting. The “transition to cold after days” setting cannot be changed after a backup has been transitioned to cold.

Resource types that are able to be transitioned to cold storage are listed in the \"Lifecycle to cold storage\" section of the Feature availability by resource table. Backup ignores this expression for other resource types.

This operation does not support continuous backups.

", "UpdateRegionSettings": "

Updates the current service opt-in settings for the Region. If service-opt-in is enabled for a service, Backup tries to protect that service's resources in this Region, when the resource is included in an on-demand backup or scheduled backup plan. Otherwise, Backup does not try to protect that service's resources in this Region. Use the DescribeRegionSettings API to determine the resource types that are supported.

", - "UpdateReportPlan": "

Updates an existing report plan identified by its ReportPlanName with the input document in JSON format.

" + "UpdateReportPlan": "

Updates an existing report plan identified by its ReportPlanName with the input document in JSON format.

", + "UpdateRestoreTestingPlan": "

This request will send changes to your specified restore testing plan. RestoreTestingPlanName cannot be updated after it is created.

RecoveryPointSelection can contain:

", + "UpdateRestoreTestingSelection": "

Most elements except the RestoreTestingSelectionName can be updated with this request.

RestoreTestingSelection can use either protected resource ARNs or conditions, but not both. That is, if your selection has ProtectedResourceArns, requesting an update with the parameter ProtectedResourceConditions will be unsuccessful.

" }, "shapes": { "ARN": { @@ -113,6 +127,8 @@ "DescribeFrameworkOutput$FrameworkArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", "DescribeProtectedResourceInput$ResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", "DescribeProtectedResourceOutput$ResourceArn": "

An ARN that uniquely identifies a resource. The format of the ARN depends on the resource type.

", + "DescribeProtectedResourceOutput$LastBackupVaultArn": "

This is the ARN (Amazon Resource Name) of the backup vault that contains the most recent backup recovery point.

", + "DescribeProtectedResourceOutput$LastRecoveryPointArn": "

This is the ARN (Amazon Resource Name) of the most recent recovery point.

", "DescribeRecoveryPointInput$RecoveryPointArn": "

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", "DescribeRecoveryPointOutput$RecoveryPointArn": "

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", "DescribeRecoveryPointOutput$BackupVaultArn": "

An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

", @@ -139,8 +155,12 @@ "ListRecoveryPointsByBackupVaultInput$ByResourceArn": "

Returns only recovery points that match the specified resource Amazon Resource Name (ARN).

", "ListRecoveryPointsByBackupVaultInput$ByParentRecoveryPointArn": "

This returns only recovery points that match the specified parent (composite) recovery point Amazon Resource Name (ARN).

", "ListRecoveryPointsByResourceInput$ResourceArn": "

An ARN that uniquely identifies a resource. The format of the ARN depends on the resource type.

", + "ListRestoreJobsByProtectedResourceInput$ResourceArn": "

Returns only restore jobs that match the specified resource Amazon Resource Name (ARN).

", + "ListRestoreJobsInput$ByRestoreTestingPlanArn": "

This returns only restore testing jobs that match the specified resource Amazon Resource Name (ARN).

", "ListTagsInput$ResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the type of resource. Valid targets for ListTags are recovery points, backup plans, and backup vaults.

", "ProtectedResource$ResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", + "ProtectedResource$LastBackupVaultArn": "

This is the ARN (Amazon Resource Name) of the backup vault that contains the most recent backup recovery point.

", + "ProtectedResource$LastRecoveryPointArn": "

This is the ARN (Amazon Resource Name) of the most recent recovery point.

", "PutBackupVaultNotificationsInput$SNSTopicArn": "

The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s events; for example, arn:aws:sns:us-west-2:111122223333:MyVaultTopic.

", "RecoveryPointByBackupVault$RecoveryPointArn": "

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", "RecoveryPointByBackupVault$BackupVaultArn": "

An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

", @@ -158,6 +178,7 @@ "ReportPlan$ReportPlanArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", "ResourceArns$member": null, "ResourceTypeList$member": null, + "RestoreJobCreator$RestoreTestingPlanArn": "

An Amazon Resource Name (ARN) that uniquely identifies a restore testing plan.

", "RestoreJobsListMember$RecoveryPointArn": "

An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", "RestoreJobsListMember$CreatedResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", "StartBackupJobInput$ResourceArn": "

An Amazon Resource Name (ARN) that uniquely identifies a resource. The format of the ARN depends on the resource type.

", @@ -477,6 +498,7 @@ "BackupRuleInput$EnableContinuousBackup": "

Specifies whether Backup creates continuous backups. True causes Backup to create continuous backups capable of point-in-time restore (PITR). False (or not specified) causes Backup to create snapshot backups.

", "BackupVaultListMember$Locked": "

A Boolean value that indicates whether Backup Vault Lock applies to the selected backup vault. If true, Vault Lock prevents delete and update operations on the recovery points in the selected vault.

", "DescribeBackupVaultOutput$Locked": "

A Boolean that indicates whether Backup Vault Lock is currently protecting the backup vault. True means that Vault Lock causes delete or update operations on the recovery points stored in the vault to fail.

", + "Lifecycle$OptInToArchiveForSupportedResources": "

Optional Boolean. If this is true, this setting will instruct your backup plan to transition supported resources to archive (cold) storage tier in accordance with your lifecycle settings.

", "ListBackupPlansInput$IncludeDeleted": "

A Boolean value with a default value of FALSE that returns deleted backup plans when set to TRUE.

" } }, @@ -548,7 +570,7 @@ "Conditions": { "base": "

Contains information about which resources to include or exclude from a backup plan using their tags. Conditions are case sensitive.

", "refs": { - "BackupSelection$Conditions": "

A list of conditions that you define to assign resources to your backup plans using tags. For example, \"StringEquals\": { \"ConditionKey\": \"aws:ResourceTag/CreatedByCryo\", \"ConditionValue\": \"true\" },. Condition operators are case sensitive.

Conditions differs from ListOfTags as follows:

" + "BackupSelection$Conditions": "

A list of conditions that you define to assign resources to your backup plans using tags. For example, \"StringEquals\": { \"Key\": \"aws:ResourceTag/CreatedByCryo\", \"Value\": \"true\" },. Condition operators are case sensitive.

Conditions differs from ListOfTags as follows:

" } }, "ConflictException": { @@ -709,6 +731,26 @@ "refs": { } }, + "CreateRestoreTestingPlanInput": { + "base": null, + "refs": { + } + }, + "CreateRestoreTestingPlanOutput": { + "base": null, + "refs": { + } + }, + "CreateRestoreTestingSelectionInput": { + "base": null, + "refs": { + } + }, + "CreateRestoreTestingSelectionOutput": { + "base": null, + "refs": { + } + }, "CronExpression": { "base": null, "refs": { @@ -772,6 +814,16 @@ "refs": { } }, + "DeleteRestoreTestingPlanInput": { + "base": null, + "refs": { + } + }, + "DeleteRestoreTestingSelectionInput": { + "base": null, + "refs": { + } + }, "DependencyFailureException": { "base": "

A dependent Amazon Web Services service or resource returned an error to the Backup service, and the action cannot be completed.

", "refs": { @@ -1041,6 +1093,46 @@ "refs": { } }, + "GetRestoreJobMetadataInput": { + "base": null, + "refs": { + } + }, + "GetRestoreJobMetadataOutput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingInferredMetadataInput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingInferredMetadataOutput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingPlanInput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingPlanOutput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingSelectionInput": { + "base": null, + "refs": { + } + }, + "GetRestoreTestingSelectionOutput": { + "base": null, + "refs": { + } + }, "GetSupportedResourceTypesOutput": { "base": null, "refs": { @@ -1111,6 +1203,19 @@ "ResourceTypeOptInPreference$value": null } }, + "KeyValue": { + "base": "

Pair of two related strings. Allowed characters are letters, white space, and numbers that can be represented in UTF-8 and the following characters: + - = . _ : /

", + "refs": { + "KeyValueList$member": null + } + }, + "KeyValueList": { + "base": null, + "refs": { + "ProtectedResourceConditions$StringEquals": "

Filters the values of your tagged resources for only those resources that you tagged with the same value. Also called \"exact matching.\"

", + "ProtectedResourceConditions$StringNotEquals": "

Filters the values of your tagged resources for only those resources that you tagged that do not have the same value. Also called \"negated matching.\"

" + } + }, "LegalHold": { "base": "

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

", "refs": { @@ -1263,7 +1368,7 @@ "ListOfTags": { "base": null, "refs": { - "BackupSelection$ListOfTags": "

A list of conditions that you define to assign resources to your backup plans using tags. For example, \"StringEquals\": { \"ConditionKey\": \"aws:ResourceTag/CreatedByCryo\", \"ConditionValue\": \"true\" },. Condition operators are case sensitive.

ListOfTags differs from Conditions as follows:

" + "BackupSelection$ListOfTags": "

A list of conditions that you define to assign resources to your backup plans using tags. For example, \"StringEquals\": { \"Key\": \"aws:ResourceTag/CreatedByCryo\", \"Value\": \"true\" },. Condition operators are case sensitive.

ListOfTags differs from Conditions as follows:

" } }, "ListProtectedResourcesByBackupVaultInput": { @@ -1346,6 +1451,16 @@ "refs": { } }, + "ListRestoreJobsByProtectedResourceInput": { + "base": null, + "refs": { + } + }, + "ListRestoreJobsByProtectedResourceOutput": { + "base": null, + "refs": { + } + }, "ListRestoreJobsInput": { "base": null, "refs": { @@ -1356,6 +1471,38 @@ "refs": { } }, + "ListRestoreTestingPlansInput": { + "base": null, + "refs": { + } + }, + "ListRestoreTestingPlansInputMaxResultsInteger": { + "base": null, + "refs": { + "ListRestoreTestingPlansInput$MaxResults": "

The maximum number of items to be returned.

" + } + }, + "ListRestoreTestingPlansOutput": { + "base": null, + "refs": { + } + }, + "ListRestoreTestingSelectionsInput": { + "base": null, + "refs": { + } + }, + "ListRestoreTestingSelectionsInputMaxResultsInteger": { + "base": null, + "refs": { + "ListRestoreTestingSelectionsInput$MaxResults": "

The maximum number of items to be returned.

" + } + }, + "ListRestoreTestingSelectionsOutput": { + "base": null, + "refs": { + } + }, "ListTagsInput": { "base": null, "refs": { @@ -1385,6 +1532,7 @@ "DescribeBackupJobOutput$NumberOfChildJobs": "

This returns the number of child (nested) backup jobs.

", "DescribeBackupVaultOutput$MinRetentionDays": "

The Backup Vault Lock setting that specifies the minimum retention period that the vault retains its recovery points. If this parameter is not specified, Vault Lock does not enforce a minimum retention period.

If specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or longer than the minimum retention period. If the job's retention period is shorter than that minimum retention period, then the vault fails the backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already stored in the vault prior to Vault Lock are not affected.

", "DescribeBackupVaultOutput$MaxRetentionDays": "

The Backup Vault Lock setting that specifies the maximum retention period that the vault retains its recovery points. If this parameter is not specified, Vault Lock does not enforce a maximum retention period on the recovery points in the vault (allowing indefinite storage).

If specified, any backup or copy job to the vault must have a lifecycle policy with a retention period equal to or shorter than the maximum retention period. If the job's retention period is longer than that maximum retention period, then the vault fails the backup or copy job, and you should either modify your lifecycle settings or use a different vault. Recovery points already stored in the vault prior to Vault Lock are not affected.

", + "DescribeProtectedResourceOutput$LatestRestoreExecutionTimeMinutes": "

This is the time in minutes the most recent restore job took to complete.

", "DescribeRecoveryPointOutput$BackupSizeInBytes": "

The size, in bytes, of a backup.

", "DescribeRestoreJobOutput$BackupSizeInBytes": "

The size, in bytes, of the restored resource.

", "DescribeRestoreJobOutput$ExpectedCompletionTimeMinutes": "

The amount of time in minutes that a job restoring a recovery point is expected to take.

", @@ -1426,6 +1574,7 @@ "ListReportJobsInput$MaxResults": "

The number of desired results from 1 to 1000. Optional. If unspecified, the query will return 1 MB of data.

", "ListReportPlansInput$MaxResults": "

The number of desired results from 1 to 1000. Optional. If unspecified, the query will return 1 MB of data.

", "ListRestoreJobSummariesInput$MaxResults": "

This parameter sets the maximum number of items to be returned.

The value is an integer. Range of accepted values is from 1 to 500.

", + "ListRestoreJobsByProtectedResourceInput$MaxResults": "

The maximum number of items to be returned.

", "ListRestoreJobsInput$MaxResults": "

The maximum number of items to be returned.

", "ListTagsInput$MaxResults": "

The maximum number of items to be returned.

" } @@ -1443,6 +1592,7 @@ "base": null, "refs": { "GetRecoveryPointRestoreMetadataOutput$RestoreMetadata": "

The set of metadata key-value pairs that describe the original configuration of the backed-up resource. These values vary depending on the service that is being restored.

", + "GetRestoreJobMetadataOutput$Metadata": "

This contains the metadata of the specified backup job.

", "StartRestoreJobInput$Metadata": "

A set of metadata key-value pairs. Contains information, such as a resource name, required to restore a recovery point.

You can get configuration metadata about a resource at the time it was backed up by calling GetRecoveryPointRestoreMetadata. However, values in addition to those provided by GetRecoveryPointRestoreMetadata might be required to restore a resource. For example, you might need to provide a new resource name if the original already exists.

You need to specify specific metadata to restore an Amazon Elastic File System (Amazon EFS) instance:

" } }, @@ -1481,6 +1631,14 @@ "ProtectedResourcesList$member": null } }, + "ProtectedResourceConditions": { + "base": "

A list of conditions that you define for resources in your restore testing plan using tags.

For example, \"StringEquals\": { \"Key\": \"aws:ResourceTag/CreatedByCryo\", \"Value\": \"true\" },. Condition operators are case sensitive.

", + "refs": { + "RestoreTestingSelectionForCreate$ProtectedResourceConditions": "

If you have included the wildcard in ProtectedResourceArns, you can include resource conditions, such as ProtectedResourceConditions: { StringEquals: [{ key: \"XXXX\", value: \"YYYY\" }].

", + "RestoreTestingSelectionForGet$ProtectedResourceConditions": "

In a resource testing selection, this parameter filters by specific conditions such as StringEquals or StringNotEquals.

", + "RestoreTestingSelectionForUpdate$ProtectedResourceConditions": "

A list of conditions that you define for resources in your restore testing plan using tags.

For example, \"StringEquals\": { \"Key\": \"aws:ResourceTag/CreatedByCryo\", \"Value\": \"true\" },. Condition operators are case sensitive.

" + } + }, "ProtectedResourcesList": { "base": null, "refs": { @@ -1503,6 +1661,11 @@ "refs": { } }, + "PutRestoreValidationResultInput": { + "base": null, + "refs": { + } + }, "RecoveryPointByBackupVault": { "base": "

Contains detailed information about the recovery points stored in a backup vault.

", "refs": { @@ -1681,6 +1844,7 @@ "DescribeProtectedResourceOutput$ResourceType": "

The type of Amazon Web Services resource saved as a recovery point; for example, an Amazon EBS volume or an Amazon RDS database.

", "DescribeRecoveryPointOutput$ResourceType": "

The type of Amazon Web Services resource to save as a recovery point; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database.

", "DescribeRestoreJobOutput$ResourceType": "

Returns metadata associated with a restore job listed by resource type.

", + "GetRecoveryPointRestoreMetadataOutput$ResourceType": "

This is the resource type associated with the recovery point.

", "ListBackupJobSummariesInput$ResourceType": "

Returns the job count for the specified resource type. Use request GetSupportedResourceTypes to obtain strings for supported resource types.

The the value ANY returns count of all resource types.

AGGREGATE_ALL aggregates job counts for all resource types and returns the sum.

The type of Amazon Web Services resource to be backed up; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database.

", "ListBackupJobsInput$ByResourceType": "

Returns only backup jobs for the specified resources:

", "ListCopyJobSummariesInput$ResourceType": "

Returns the job count for the specified resource type. Use request GetSupportedResourceTypes to obtain strings for supported resource types.

The the value ANY returns count of all resource types.

AGGREGATE_ALL aggregates job counts for all resource types and returns the sum.

The type of Amazon Web Services resource to be backed up; for example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database Service (Amazon RDS) database.

", @@ -1724,10 +1888,27 @@ "GetSupportedResourceTypesOutput$ResourceTypes": "

Contains a string with the supported Amazon Web Services resource types:

" } }, + "RestoreDeletionStatus": { + "base": null, + "refs": { + "DescribeRestoreJobOutput$DeletionStatus": "

This notes the status of the data generated by the restore test. The status may be Deleting, Failed, or Successful.

", + "RestoreJobsListMember$DeletionStatus": "

This notes the status of the data generated by the restore test. The status may be Deleting, Failed, or Successful.

" + } + }, + "RestoreJobCreator": { + "base": "

Contains information about the restore testing plan that Backup used to initiate the restore job.

", + "refs": { + "DescribeRestoreJobOutput$CreatedBy": "

Contains identifying information about the creation of a restore job.

", + "RestoreJobsListMember$CreatedBy": "

Contains identifying information about the creation of a restore job.

" + } + }, "RestoreJobId": { "base": null, "refs": { "DescribeRestoreJobInput$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

", + "GetRestoreJobMetadataInput$RestoreJobId": "

This is a unique identifier of a restore job within Backup.

", + "GetRestoreJobMetadataOutput$RestoreJobId": "

This is a unique identifier of a restore job within Backup.

", + "PutRestoreValidationResultInput$RestoreJobId": "

This is a unique identifier of a restore job within Backup.

", "StartRestoreJobOutput$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

" } }, @@ -1742,6 +1923,7 @@ "base": null, "refs": { "DescribeRestoreJobOutput$Status": "

Status code specifying the state of the job that is initiated by Backup to restore a recovery point.

", + "ListRestoreJobsByProtectedResourceInput$ByStatus": "

Returns only restore jobs associated with the specified job status.

", "ListRestoreJobsInput$ByStatus": "

Returns only restore jobs associated with the specified job status.

", "RestoreJobsListMember$Status": "

A status code specifying the state of the job initiated by Backup to restore a recovery point.

" } @@ -1761,6 +1943,7 @@ "RestoreJobsList": { "base": null, "refs": { + "ListRestoreJobsByProtectedResourceOutput$RestoreJobs": "

An array of objects that contain detailed information about jobs to restore saved resources.>

", "ListRestoreJobsOutput$RestoreJobs": "

An array of objects that contain detailed information about jobs to restore saved resources.

" } }, @@ -1770,6 +1953,109 @@ "RestoreJobsList$member": null } }, + "RestoreTestingPlanForCreate": { + "base": "

This contains metadata about a restore testing plan.

", + "refs": { + "CreateRestoreTestingPlanInput$RestoreTestingPlan": "

A restore testing plan must contain a unique RestoreTestingPlanName string you create and must contain a ScheduleExpression cron. You may optionally include a StartWindowHours integer and a CreatorRequestId string.

The RestoreTestingPlanName is a unique string that is the name of the restore testing plan. This cannot be changed after creation, and it must consist of only alphanumeric characters and underscores.

" + } + }, + "RestoreTestingPlanForGet": { + "base": "

This contains metadata about a restore testing plan.

", + "refs": { + "GetRestoreTestingPlanOutput$RestoreTestingPlan": "

Specifies the body of a restore testing plan. Includes RestoreTestingPlanName.

" + } + }, + "RestoreTestingPlanForList": { + "base": "

This contains metadata about a restore testing plan.

", + "refs": { + "RestoreTestingPlans$member": null + } + }, + "RestoreTestingPlanForUpdate": { + "base": "

This contains metadata about a restore testing plan.

", + "refs": { + "UpdateRestoreTestingPlanInput$RestoreTestingPlan": "

Specifies the body of a restore testing plan.

" + } + }, + "RestoreTestingPlans": { + "base": null, + "refs": { + "ListRestoreTestingPlansOutput$RestoreTestingPlans": "

This is a returned list of restore testing plans.

" + } + }, + "RestoreTestingRecoveryPointSelection": { + "base": "

Required: Algorithm; Required: Recovery point types; IncludeVaults(one or more). Optional: SelectionWindowDays ('30' if not specified);ExcludeVaults (list of selectors), defaults to empty list if not listed.

", + "refs": { + "RestoreTestingPlanForCreate$RecoveryPointSelection": "

Required: Algorithm; Required: Recovery point types; IncludeVaults (one or more). Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults (list of selectors), defaults to empty list if not listed.

", + "RestoreTestingPlanForGet$RecoveryPointSelection": "

The specified criteria to assign a set of resources, such as recovery point types or backup vaults.

", + "RestoreTestingPlanForUpdate$RecoveryPointSelection": "

Required: Algorithm; RecoveryPointTypes; IncludeVaults (one or more).

Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults (defaults to empty list if not listed).

" + } + }, + "RestoreTestingRecoveryPointSelectionAlgorithm": { + "base": null, + "refs": { + "RestoreTestingRecoveryPointSelection$Algorithm": "

Acceptable values include \"LATEST_WITHIN_WINDOW\" or \"RANDOM_WITHIN_WINDOW\"

" + } + }, + "RestoreTestingRecoveryPointType": { + "base": null, + "refs": { + "RestoreTestingRecoveryPointTypeList$member": null + } + }, + "RestoreTestingRecoveryPointTypeList": { + "base": null, + "refs": { + "RestoreTestingRecoveryPointSelection$RecoveryPointTypes": "

These are the types of recovery points.

" + } + }, + "RestoreTestingSelectionForCreate": { + "base": "

This contains metadata about a specific restore testing selection.

ProtectedResourceType is required, such as Amazon EBS or Amazon EC2.

This consists of RestoreTestingSelectionName, ProtectedResourceType, and one of the following:

Each protected resource type can have one single value.

A restore testing selection can include a wildcard value (\"*\") for ProtectedResourceArns along with ProtectedResourceConditions. Alternatively, you can include up to 30 specific protected resource ARNs in ProtectedResourceArns.

ProtectedResourceConditions examples include as StringEquals and StringNotEquals.

", + "refs": { + "CreateRestoreTestingSelectionInput$RestoreTestingSelection": "

This consists of RestoreTestingSelectionName, ProtectedResourceType, and one of the following:

Each protected resource type can have one single value.

A restore testing selection can include a wildcard value (\"*\") for ProtectedResourceArns along with ProtectedResourceConditions. Alternatively, you can include up to 30 specific protected resource ARNs in ProtectedResourceArns.

" + } + }, + "RestoreTestingSelectionForGet": { + "base": "

This contains metadata about a restore testing selection.

", + "refs": { + "GetRestoreTestingSelectionOutput$RestoreTestingSelection": "

Unique name of the restore testing selection.

" + } + }, + "RestoreTestingSelectionForList": { + "base": "

This contains metadata about a restore testing selection.

", + "refs": { + "RestoreTestingSelections$member": null + } + }, + "RestoreTestingSelectionForUpdate": { + "base": "

This contains metadata about a restore testing selection.

", + "refs": { + "UpdateRestoreTestingSelectionInput$RestoreTestingSelection": "

To update your restore testing selection, you can use either protected resource ARNs or conditions, but not both. That is, if your selection has ProtectedResourceArns, requesting an update with the parameter ProtectedResourceConditions will be unsuccessful.

" + } + }, + "RestoreTestingSelections": { + "base": null, + "refs": { + "ListRestoreTestingSelectionsOutput$RestoreTestingSelections": "

The returned restore testing selections associated with the restore testing plan.

" + } + }, + "RestoreValidationStatus": { + "base": null, + "refs": { + "DescribeRestoreJobOutput$ValidationStatus": "

This is the status of validation run on the indicated restore job.

", + "PutRestoreValidationResultInput$ValidationStatus": "

This is the status of your restore validation.

", + "RestoreJobsListMember$ValidationStatus": "

This is the status of validation run on the indicated restore job.

" + } + }, + "SensitiveStringMap": { + "base": null, + "refs": { + "CreateRestoreTestingPlanInput$Tags": "

Optional tags to include. A tag is a key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters,numbers, spaces, and the following characters: + - = . _ : /.

", + "RestoreTestingSelectionForCreate$RestoreMetadataOverrides": "

You can override certain restore metadata keys by including the parameter RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values are not case sensitive.

See the complete list of restore testing inferred metadata.

", + "RestoreTestingSelectionForGet$RestoreMetadataOverrides": "

You can override certain restore metadata keys by including the parameter RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values are not case sensitive.

See the complete list of restore testing inferred metadata.

", + "RestoreTestingSelectionForUpdate$RestoreMetadataOverrides": "

You can override certain restore metadata keys by including the parameter RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values are not case sensitive.

See the complete list of restore testing inferred metadata.

" + } + }, "ServiceUnavailableException": { "base": "

The request failed due to a temporary failure of the server.

", "refs": { @@ -1826,6 +2112,72 @@ "DescribeRecoveryPointOutput$StorageClass": "

Specifies the storage class of the recovery point. Valid values are WARM or COLD.

" } }, + "String": { + "base": null, + "refs": { + "CreateRestoreTestingPlanInput$CreatorRequestId": "

This is a unique string that identifies the request and allows failed requests to be retriedwithout the risk of running the operation twice. This parameter is optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", + "CreateRestoreTestingPlanOutput$RestoreTestingPlanArn": "

An Amazon Resource Name (ARN) that uniquely identifies the created restore testing plan.

", + "CreateRestoreTestingPlanOutput$RestoreTestingPlanName": "

This unique string is the name of the restore testing plan.

The name cannot be changed after creation. The name consists of only alphanumeric characters and underscores. Maximum length is 50.

", + "CreateRestoreTestingSelectionInput$CreatorRequestId": "

This is an optional unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", + "CreateRestoreTestingSelectionInput$RestoreTestingPlanName": "

Input the restore testing plan name that was returned from the related CreateRestoreTestingPlan request.

", + "CreateRestoreTestingSelectionOutput$RestoreTestingPlanArn": "

This is the ARN of the restore testing plan with which the restore testing selection is associated.

", + "CreateRestoreTestingSelectionOutput$RestoreTestingPlanName": "

Unique string that is the name of the restore testing plan.

The name cannot be changed after creation. The name consists of only alphanumeric characters and underscores. Maximum length is 50.

", + "CreateRestoreTestingSelectionOutput$RestoreTestingSelectionName": "

This is the unique name of the restore testing selection that belongs to the related restore testing plan.

", + "DeleteRestoreTestingPlanInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan you wish to delete.

", + "DeleteRestoreTestingSelectionInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan that contains the restore testing selection you wish to delete.

", + "DeleteRestoreTestingSelectionInput$RestoreTestingSelectionName": "

Required unique name of the restore testing selection you wish to delete.

", + "GetRestoreTestingInferredMetadataInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", + "GetRestoreTestingInferredMetadataInput$BackupVaultName": "

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web ServicesRegion where they are created. They consist of letters, numbers, and hyphens.

", + "GetRestoreTestingInferredMetadataInput$RecoveryPointArn": "

An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.

", + "GetRestoreTestingPlanInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan.

", + "GetRestoreTestingSelectionInput$RestoreTestingPlanName": "

Required unique name of the restore testing plan.

", + "GetRestoreTestingSelectionInput$RestoreTestingSelectionName": "

Required unique name of the restore testing selection.

", + "KeyValue$Key": "

The tag key (String). The key can't start with aws:.

Length Constraints: Minimum length of 1. Maximum length of 128.

Pattern: ^(?![aA]{1}[wW]{1}[sS]{1}:)([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]+)$

", + "KeyValue$Value": "

The value of the key.

Length Constraints: Maximum length of 256.

Pattern: ^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$

", + "ListRestoreTestingPlansInput$NextToken": "

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

", + "ListRestoreTestingPlansOutput$NextToken": "

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

", + "ListRestoreTestingSelectionsInput$NextToken": "

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

", + "ListRestoreTestingSelectionsInput$RestoreTestingPlanName": "

Returns restore testing selections by the specified restore testing plan name.

", + "ListRestoreTestingSelectionsOutput$NextToken": "

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

", + "RestoreTestingPlanForCreate$RestoreTestingPlanName": "

The RestoreTestingPlanName is a unique string that is the name of the restore testing plan. This cannot be changed after creation, and it must consist of only alphanumeric characters and underscores.

", + "RestoreTestingPlanForCreate$ScheduleExpression": "

A CRON expression in specified timezone when a restore testing plan is executed.

", + "RestoreTestingPlanForCreate$ScheduleExpressionTimezone": "

Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

", + "RestoreTestingPlanForGet$CreatorRequestId": "

This identifies the request and allows failed requests to be retried without the risk of running the operation twice. If the request includes a CreatorRequestId that matches an existing backup plan, that plan is returned. This parameter is optional.

If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", + "RestoreTestingPlanForGet$RestoreTestingPlanArn": "

An Amazon Resource Name (ARN) that uniquely identifies a restore testing plan.

", + "RestoreTestingPlanForGet$RestoreTestingPlanName": "

This is the restore testing plan name.

", + "RestoreTestingPlanForGet$ScheduleExpression": "

A CRON expression in specified timezone when a restore testing plan is executed.

", + "RestoreTestingPlanForGet$ScheduleExpressionTimezone": "

Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

", + "RestoreTestingPlanForList$RestoreTestingPlanArn": "

An Amazon Resource Name (ARN) that uniquely identifiesa restore testing plan.

", + "RestoreTestingPlanForList$RestoreTestingPlanName": "

This is the restore testing plan name.

", + "RestoreTestingPlanForList$ScheduleExpression": "

A CRON expression in specified timezone when a restore testing plan is executed.

", + "RestoreTestingPlanForList$ScheduleExpressionTimezone": "

Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

", + "RestoreTestingPlanForUpdate$ScheduleExpression": "

A CRON expression in specified timezone when a restore testing plan is executed.

", + "RestoreTestingPlanForUpdate$ScheduleExpressionTimezone": "

Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.

", + "RestoreTestingSelectionForCreate$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target resource; for example: arn:aws:iam::123456789012:role/S3Access.

", + "RestoreTestingSelectionForCreate$ProtectedResourceType": "

The type of Amazon Web Services resource included in a restore testing selection; for example, an Amazon EBS volume or an Amazon RDS database.

Supported resource types accepted include:

", + "RestoreTestingSelectionForCreate$RestoreTestingSelectionName": "

This is the unique name of the restore testing selection that belongs to the related restore testing plan.

", + "RestoreTestingSelectionForGet$CreatorRequestId": "

This identifies the request and allows failed requests to be retried without the risk of running the operation twice. If the request includes a CreatorRequestId that matches an existing backup plan, that plan is returned. This parameter is optional.

If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", + "RestoreTestingSelectionForGet$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target resource; for example:arn:aws:iam::123456789012:role/S3Access.

", + "RestoreTestingSelectionForGet$ProtectedResourceType": "

The type of Amazon Web Services resource included in a resource testing selection; for example, an Amazon EBS volume or an Amazon RDS database.

", + "RestoreTestingSelectionForGet$RestoreTestingPlanName": "

The RestoreTestingPlanName is a unique string that is the name of the restore testing plan.

", + "RestoreTestingSelectionForGet$RestoreTestingSelectionName": "

This is the unique name of the restore testing selection that belongs to the related restore testing plan.

", + "RestoreTestingSelectionForList$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target resource; for example: arn:aws:iam::123456789012:role/S3Access.

", + "RestoreTestingSelectionForList$ProtectedResourceType": "

The type of Amazon Web Services resource included in a restore testing selection; for example, an Amazon EBS volume or an Amazon RDS database.

", + "RestoreTestingSelectionForList$RestoreTestingPlanName": "

Unique string that is the name of the restore testing plan.

The name cannot be changed after creation. The name must consist of only alphanumeric characters and underscores. Maximum length is 50.

", + "RestoreTestingSelectionForList$RestoreTestingSelectionName": "

Unique name of a restore testing selection.

", + "RestoreTestingSelectionForUpdate$IamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that Backup uses to create the target resource; for example: arn:aws:iam::123456789012:role/S3Access.

", + "SensitiveStringMap$key": null, + "SensitiveStringMap$value": null, + "UpdateRestoreTestingPlanInput$RestoreTestingPlanName": "

This is the restore testing plan name you wish to update.

", + "UpdateRestoreTestingPlanOutput$RestoreTestingPlanArn": "

Unique ARN (Amazon Resource Name) of the restore testing plan.

", + "UpdateRestoreTestingPlanOutput$RestoreTestingPlanName": "

The name cannot be changed after creation. The name consists of only alphanumeric characters and underscores. Maximum length is 50.

", + "UpdateRestoreTestingSelectionInput$RestoreTestingPlanName": "

The restore testing plan name is required to update the indicated testing plan.

", + "UpdateRestoreTestingSelectionInput$RestoreTestingSelectionName": "

This is the required restore testing selection name of the restore testing selection you wish to update.

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingPlanArn": "

Unique string that is the name of the restore testing plan.

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingPlanName": "

This is the restore testing plan with which the updated restore testing selection is associated.

", + "UpdateRestoreTestingSelectionOutput$RestoreTestingSelectionName": "

This is the returned restore testing selection name.

" + } + }, "TagKey": { "base": null, "refs": { @@ -1863,6 +2215,25 @@ "TagResourceInput$Tags": "

Key-value pairs that are used to help organize your resources. You can assign your own metadata to the resources you create. For clarity, this is the structure to assign tags: [{\"Key\":\"string\",\"Value\":\"string\"}].

" } }, + "Timestamp": { + "base": null, + "refs": { + "CreateRestoreTestingPlanOutput$CreationTime": "

The date and time a restore testing plan was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087AM.

", + "CreateRestoreTestingSelectionOutput$CreationTime": "

This is the time the resource testing selection was created successfully.

", + "RestoreTestingPlanForGet$CreationTime": "

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

", + "RestoreTestingPlanForGet$LastExecutionTime": "

The last time a restore test was run with the specified restore testing plan. A date and time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreTestingPlanForGet$LastUpdateTime": "

The date and time that the restore testing plan was updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreTestingPlanForList$CreationTime": "

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

", + "RestoreTestingPlanForList$LastExecutionTime": "

The last time a restore test was run with the specified restore testing plan. A date and time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreTestingPlanForList$LastUpdateTime": "

The date and time that the restore testing plan was updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreTestingSelectionForGet$CreationTime": "

The date and time that a restore testing selection was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 201812:11:30.087 AM.

", + "RestoreTestingSelectionForList$CreationTime": "

This is the date and time that a restore testing selection was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26,2018 12:11:30.087 AM.

", + "UpdateRestoreTestingPlanOutput$CreationTime": "

This is the time the resource testing plan was created.

", + "UpdateRestoreTestingPlanOutput$UpdateTime": "

This is the time the update completed for the restore testing plan.

", + "UpdateRestoreTestingSelectionOutput$CreationTime": "

This is the time the resource testing selection was updated successfully.

", + "UpdateRestoreTestingSelectionOutput$UpdateTime": "

This is the time the update completed for the restore testing selection.

" + } + }, "Timezone": { "base": null, "refs": { @@ -1925,6 +2296,26 @@ "refs": { } }, + "UpdateRestoreTestingPlanInput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingPlanOutput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingSelectionInput": { + "base": null, + "refs": { + } + }, + "UpdateRestoreTestingSelectionOutput": { + "base": null, + "refs": { + } + }, "VaultNames": { "base": null, "refs": { @@ -1979,7 +2370,16 @@ "CopyJobSummary$Count": "

The value as a number of jobs in a job summary.

", "Framework$NumberOfControls": "

The number of controls contained by the framework.

", "ReportSetting$NumberOfFrameworks": "

The number of frameworks a report covers.

", - "RestoreJobSummary$Count": "

The value as a number of jobs in a job summary.

" + "RestoreJobSummary$Count": "

The value as a number of jobs in a job summary.

", + "RestoreTestingPlanForCreate$StartWindowHours": "

Defaults to 24 hours.

A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).

", + "RestoreTestingPlanForGet$StartWindowHours": "

Defaults to 24 hours.

A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).

", + "RestoreTestingPlanForList$StartWindowHours": "

Defaults to 24 hours.

A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).

", + "RestoreTestingPlanForUpdate$StartWindowHours": "

Defaults to 24 hours.

A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).

", + "RestoreTestingRecoveryPointSelection$SelectionWindowDays": "

Accepted values are integers from 1 to 365.

", + "RestoreTestingSelectionForCreate$ValidationWindowHours": "

This is amount of hours (1 to 168) available to run a validation script on the data. The data will be deleted upon the completion of the validation script or the end of the specified retention period, whichever comes first.

", + "RestoreTestingSelectionForGet$ValidationWindowHours": "

This is amount of hours (1 to 168) available to run a validation script on the data. The data will be deleted upon the completion of the validation script or the end of the specified retention period, whichever comes first.

", + "RestoreTestingSelectionForList$ValidationWindowHours": "

This value represents the time, in hours, data is retained after a restore test so that optional validation can be completed.

Accepted value is an integer between 0 and 168 (the hourly equivalent of seven days).

", + "RestoreTestingSelectionForUpdate$ValidationWindowHours": "

This value represents the time, in hours, data is retained after a restore test so that optional validation can be completed.

Accepted value is an integer between 0 and 168 (the hourly equivalent of seven days).

" } }, "long": { @@ -2004,7 +2404,7 @@ "BackupJob$BackupType": "

Represents the type of backup for a backup job.

", "BackupJob$ParentJobId": "

This uniquely identifies a request to Backup to back up a resource. The return will be the parent (composite) job ID.

", "BackupJob$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", - "BackupJob$MessageCategory": "

This parameter is the job count for the specified message category.

Example strings include AccessDenied, Success, and InvalidParameters. See Monitoring for a list of MessageCategory strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", + "BackupJob$MessageCategory": "

This parameter is the job count for the specified message category.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. See Monitoring for a list of MessageCategory strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", "BackupPlanTemplatesListMember$BackupPlanTemplateId": "

Uniquely identifies a stored backup plan template.

", "BackupPlanTemplatesListMember$BackupPlanTemplateName": "

The optional display name of a backup plan template.

", "BackupPlansListMember$BackupPlanId": "

Uniquely identifies a backup plan.

", @@ -2027,7 +2427,7 @@ "CopyJob$ParentJobId": "

This uniquely identifies a request to Backup to copy a resource. The return will be the parent (composite) job ID.

", "CopyJob$CompositeMemberIdentifier": "

This is the identifier of a resource within a composite group, such as nested (child) recovery point belonging to a composite (parent) stack. The ID is transferred from the logical ID within a stack.

", "CopyJob$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", - "CopyJob$MessageCategory": "

This parameter is the job count for the specified message category.

Example strings include AccessDenied, Success, and InvalidParameters. See Monitoring for a list of MessageCategory strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum

", + "CopyJob$MessageCategory": "

This parameter is the job count for the specified message category.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters. See Monitoring for a list of MessageCategory strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum

", "CreateBackupPlanInput$CreatorRequestId": "

Identifies the request and allows failed requests to be retried without the risk of running the operation twice. If the request includes a CreatorRequestId that matches an existing backup plan, that plan is returned. This parameter is optional.

If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", "CreateBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", "CreateBackupPlanOutput$VersionId": "

Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most 1,024 bytes long. They cannot be edited.

", @@ -2043,7 +2443,7 @@ "CreateLegalHoldOutput$Title": "

This is the string title of the legal hold returned after creating the legal hold.

", "CreateLegalHoldOutput$Description": "

This is the returned string description of the legal hold.

", "CreateLegalHoldOutput$LegalHoldId": "

Legal hold ID returned for the specified legal hold on a recovery point.

", - "CreateLogicallyAirGappedBackupVaultInput$CreatorRequestId": "

This is the ID of the creation request.

", + "CreateLogicallyAirGappedBackupVaultInput$CreatorRequestId": "

This is the ID of the creation request.

This parameter is optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", "CreateReportPlanInput$IdempotencyToken": "

A customer-chosen string that you can use to distinguish between otherwise identical calls to CreateReportPlanInput. Retrying a successful request with the same idempotency token results in a success message with no action taken.

", "DeleteBackupPlanInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "DeleteBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", @@ -2062,11 +2462,11 @@ "DescribeBackupJobOutput$BackupType": "

Represents the actual backup type selected for a backup job. For example, if a successful Windows Volume Shadow Copy Service (VSS) backup was taken, BackupType returns \"WindowsVSS\". If BackupType is empty, then the backup type was a regular backup.

", "DescribeBackupJobOutput$ParentJobId": "

This returns the parent (composite) resource backup job ID.

", "DescribeBackupJobOutput$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", - "DescribeBackupJobOutput$MessageCategory": "

This is the job count for the specified message category.

Example strings may include AccessDenied, Success, and InvalidParameters. See Monitoring for a list of MessageCategory strings.

", + "DescribeBackupJobOutput$MessageCategory": "

This is the job count for the specified message category.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. View Monitoring for a list of accepted MessageCategory strings.

", "DescribeBackupVaultInput$BackupVaultName": "

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web Services Region where they are created. They consist of lowercase letters, numbers, and hyphens.

", "DescribeBackupVaultInput$BackupVaultAccountId": "

This is the account ID of the specified backup vault.

", "DescribeBackupVaultOutput$BackupVaultName": "

The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Region where they are created. They consist of lowercase letters, numbers, and hyphens.

", - "DescribeBackupVaultOutput$CreatorRequestId": "

A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice.

", + "DescribeBackupVaultOutput$CreatorRequestId": "

A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice. This parameter is optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.

", "DescribeCopyJobInput$CopyJobId": "

Uniquely identifies a copy job.

", "DescribeFrameworkOutput$DeploymentStatus": "

The deployment status of a framework. The statuses are:

CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED | FAILED

", "DescribeFrameworkOutput$FrameworkStatus": "

A framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn Config recording on or off for each resource. The statuses are:

", @@ -2078,6 +2478,8 @@ "DescribeRestoreJobOutput$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

", "DescribeRestoreJobOutput$StatusMessage": "

A message showing the status of a job to restore a recovery point.

", "DescribeRestoreJobOutput$PercentDone": "

Contains an estimated percentage that is complete of a job at the time the job status was queried.

", + "DescribeRestoreJobOutput$ValidationStatusMessage": "

This describes the status of validation run on the indicated restore job.

", + "DescribeRestoreJobOutput$DeletionStatusMessage": "

This describes the restore job deletion status.

", "ExportBackupPlanTemplateInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "ExportBackupPlanTemplateOutput$BackupPlanTemplateJson": "

The body of a backup plan template in JSON format.

This is a signed JSON document that cannot be modified before being passed to GetBackupPlanFromJSON.

", "FormatList$member": null, @@ -2088,7 +2490,7 @@ "GetBackupPlanInput$VersionId": "

Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most 1,024 bytes long. Version IDs cannot be edited.

", "GetBackupPlanOutput$BackupPlanId": "

Uniquely identifies a backup plan.

", "GetBackupPlanOutput$VersionId": "

Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most 1,024 bytes long. Version IDs cannot be edited.

", - "GetBackupPlanOutput$CreatorRequestId": "

A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice.

", + "GetBackupPlanOutput$CreatorRequestId": "

A unique string that identifies the request and allows failed requests to be retried without the risk of running the operation twice.

", "GetBackupSelectionInput$BackupPlanId": "

Uniquely identifies a backup plan.

", "GetBackupSelectionInput$SelectionId": "

Uniquely identifies the body of a request to assign a set of resources to a backup plan.

", "GetBackupSelectionOutput$SelectionId": "

Uniquely identifies the body of a request to assign a set of resources to a backup plan.

", @@ -2118,66 +2520,69 @@ "LimitExceededException$Message": null, "LimitExceededException$Type": "

", "LimitExceededException$Context": "

", - "ListBackupJobSummariesInput$NextToken": "

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

", + "ListBackupJobSummariesInput$NextToken": "

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

", "ListBackupJobSummariesOutput$AggregationPeriod": "

This is the period that sets the boundaries for returned results.

", - "ListBackupJobSummariesOutput$NextToken": "

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

", - "ListBackupJobsInput$NextToken": "

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

", + "ListBackupJobSummariesOutput$NextToken": "

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

", + "ListBackupJobsInput$NextToken": "

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

", "ListBackupJobsInput$ByParentJobId": "

This is a filter to list child (nested) jobs based on parent job ID.

", - "ListBackupJobsInput$ByMessageCategory": "

This returns a list of backup jobs for the specified message category.

Example strings may include AccessDenied, Success, and InvalidParameters. See Monitoring for a list of MessageCategory strings.

", - "ListBackupJobsOutput$NextToken": "

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

", - "ListBackupPlanTemplatesInput$NextToken": "

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

", - "ListBackupPlanTemplatesOutput$NextToken": "

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

", + "ListBackupJobsInput$ByMessageCategory": "

This is an optional parameter that can be used to filter out jobs with a MessageCategory which matches the value you input.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters.

View Monitoring

The wildcard () returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", + "ListBackupJobsOutput$NextToken": "

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

", + "ListBackupPlanTemplatesInput$NextToken": "

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

", + "ListBackupPlanTemplatesOutput$NextToken": "

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

", "ListBackupPlanVersionsInput$BackupPlanId": "

Uniquely identifies a backup plan.

", - "ListBackupPlanVersionsInput$NextToken": "

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

", - "ListBackupPlanVersionsOutput$NextToken": "

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

", - "ListBackupPlansInput$NextToken": "

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

", - "ListBackupPlansOutput$NextToken": "

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

", + "ListBackupPlanVersionsInput$NextToken": "

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

", + "ListBackupPlanVersionsOutput$NextToken": "

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

", + "ListBackupPlansInput$NextToken": "

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

", + "ListBackupPlansOutput$NextToken": "

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

", "ListBackupSelectionsInput$BackupPlanId": "

Uniquely identifies a backup plan.

", - "ListBackupSelectionsInput$NextToken": "

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

", - "ListBackupSelectionsOutput$NextToken": "

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

", - "ListBackupVaultsInput$NextToken": "

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

", - "ListBackupVaultsOutput$NextToken": "

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

", - "ListCopyJobSummariesInput$NextToken": "

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

", + "ListBackupSelectionsInput$NextToken": "

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

", + "ListBackupSelectionsOutput$NextToken": "

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

", + "ListBackupVaultsInput$NextToken": "

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

", + "ListBackupVaultsOutput$NextToken": "

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

", + "ListCopyJobSummariesInput$NextToken": "

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

", "ListCopyJobSummariesOutput$AggregationPeriod": "

This is the period that sets the boundaries for returned results.

", - "ListCopyJobSummariesOutput$NextToken": "

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

", - "ListCopyJobsInput$NextToken": "

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

", + "ListCopyJobSummariesOutput$NextToken": "

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

", + "ListCopyJobsInput$NextToken": "

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

", "ListCopyJobsInput$ByDestinationVaultArn": "

An Amazon Resource Name (ARN) that uniquely identifies a source backup vault to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault.

", "ListCopyJobsInput$ByParentJobId": "

This is a filter to list child (nested) jobs based on parent job ID.

", - "ListCopyJobsInput$ByMessageCategory": "

This parameter returns the job count for the specified message category.

Example accepted strings include AccessDenied, Success, and InvalidParameters. See Monitoring for a list of accepted MessageCategory strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", - "ListCopyJobsOutput$NextToken": "

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

", + "ListCopyJobsInput$ByMessageCategory": "

This is an optional parameter that can be used to filter out jobs with a MessageCategory which matches the value you input.

Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS.

View Monitoring for a list of accepted strings.

The the value ANY returns count of all message categories.

AGGREGATE_ALL aggregates job counts for all message categories and returns the sum.

", + "ListCopyJobsOutput$NextToken": "

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

", "ListFrameworksInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListFrameworksOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", - "ListLegalHoldsInput$NextToken": "

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

", - "ListLegalHoldsOutput$NextToken": "

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

", - "ListProtectedResourcesByBackupVaultInput$NextToken": "

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

", - "ListProtectedResourcesByBackupVaultOutput$NextToken": "

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

", - "ListProtectedResourcesInput$NextToken": "

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

", - "ListProtectedResourcesOutput$NextToken": "

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

", - "ListRecoveryPointsByBackupVaultInput$NextToken": "

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

", + "ListLegalHoldsInput$NextToken": "

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

", + "ListLegalHoldsOutput$NextToken": "

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

", + "ListProtectedResourcesByBackupVaultInput$NextToken": "

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

", + "ListProtectedResourcesByBackupVaultOutput$NextToken": "

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

", + "ListProtectedResourcesInput$NextToken": "

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

", + "ListProtectedResourcesOutput$NextToken": "

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

", + "ListRecoveryPointsByBackupVaultInput$NextToken": "

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

", "ListRecoveryPointsByBackupVaultInput$ByBackupPlanId": "

Returns only recovery points that match the specified backup plan ID.

", - "ListRecoveryPointsByBackupVaultOutput$NextToken": "

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

", + "ListRecoveryPointsByBackupVaultOutput$NextToken": "

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

", "ListRecoveryPointsByLegalHoldInput$LegalHoldId": "

This is the ID of the legal hold.

", - "ListRecoveryPointsByLegalHoldInput$NextToken": "

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

", + "ListRecoveryPointsByLegalHoldInput$NextToken": "

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

", "ListRecoveryPointsByLegalHoldOutput$NextToken": "

This return is the next item following a partial list of returned resources.

", - "ListRecoveryPointsByResourceInput$NextToken": "

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

", - "ListRecoveryPointsByResourceOutput$NextToken": "

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

", + "ListRecoveryPointsByResourceInput$NextToken": "

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

", + "ListRecoveryPointsByResourceOutput$NextToken": "

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

", "ListReportJobsInput$ByStatus": "

Returns only report jobs that are in the specified status. The statuses are:

CREATED | RUNNING | COMPLETED | FAILED

", "ListReportJobsInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportJobsOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportPlansInput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", "ListReportPlansOutput$NextToken": "

An identifier that was returned from the previous call to this operation, which can be used to return the next set of items in the list.

", - "ListRestoreJobSummariesInput$NextToken": "

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

", + "ListRestoreJobSummariesInput$NextToken": "

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

", "ListRestoreJobSummariesOutput$AggregationPeriod": "

This is the period that sets the boundaries for returned results.

", - "ListRestoreJobSummariesOutput$NextToken": "

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

", - "ListRestoreJobsInput$NextToken": "

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

", - "ListRestoreJobsOutput$NextToken": "

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

", - "ListTagsInput$NextToken": "

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

", - "ListTagsOutput$NextToken": "

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

", + "ListRestoreJobSummariesOutput$NextToken": "

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

", + "ListRestoreJobsByProtectedResourceInput$NextToken": "

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

", + "ListRestoreJobsByProtectedResourceOutput$NextToken": "

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

", + "ListRestoreJobsInput$NextToken": "

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

", + "ListRestoreJobsOutput$NextToken": "

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

", + "ListTagsInput$NextToken": "

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

", + "ListTagsOutput$NextToken": "

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

", "MissingParameterValueException$Code": null, "MissingParameterValueException$Message": null, "MissingParameterValueException$Type": "

", "MissingParameterValueException$Context": "

", "ProtectedResource$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", + "PutRestoreValidationResultInput$ValidationStatusMessage": "

This is an optional message string you can input to describe the validation status for the restore test validation.

", "RecoveryPointByBackupVault$StatusMessage": "

A message explaining the reason of the recovery point deletion failure.

", "RecoveryPointByBackupVault$CompositeMemberIdentifier": "

This is the identifier of a resource within a composite group, such as nested (child) recovery point belonging to a composite (parent) stack. The ID is transferred from the logical ID within a stack.

", "RecoveryPointByBackupVault$ResourceName": "

This is the non-unique name of the resource that belongs to the specified backup.

", @@ -2202,6 +2607,8 @@ "RestoreJobsListMember$RestoreJobId": "

Uniquely identifies the job that restores a recovery point.

", "RestoreJobsListMember$StatusMessage": "

A detailed message explaining the status of the job to restore a recovery point.

", "RestoreJobsListMember$PercentDone": "

Contains an estimated percentage complete of a job at the time the job status was queried.

", + "RestoreJobsListMember$ValidationStatusMessage": "

This describes the status of validation run on the indicated restore job.

", + "RestoreJobsListMember$DeletionStatusMessage": "

This describes the restore job deletion status.

", "ServiceUnavailableException$Code": null, "ServiceUnavailableException$Message": null, "ServiceUnavailableException$Type": "

", @@ -2232,7 +2639,12 @@ "ReportSetting$FrameworkArns": "

The Amazon Resource Names (ARNs) of the frameworks a report covers.

", "ReportSetting$Accounts": "

These are the accounts to be included in the report.

", "ReportSetting$OrganizationUnits": "

These are the Organizational Units to be included in the report.

", - "ReportSetting$Regions": "

These are the Regions to be included in the report.

" + "ReportSetting$Regions": "

These are the Regions to be included in the report.

", + "RestoreTestingRecoveryPointSelection$ExcludeVaults": "

Accepted values include specific ARNs or list of selectors. Defaults to empty list if not listed.

", + "RestoreTestingRecoveryPointSelection$IncludeVaults": "

Accepted values include wildcard [\"*\"] or by specific ARNs or ARN wilcard replacement [\"arn:aws:backup:us-west-2:123456789012:backup-vault:asdf\", ...] [\"arn:aws:backup:*:*:backup-vault:asdf-*\", ...]

", + "RestoreTestingSelectionForCreate$ProtectedResourceArns": "

Each protected resource can be filtered by its specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or by a wildcard: ProtectedResourceArns: [\"*\"], but not both.

", + "RestoreTestingSelectionForGet$ProtectedResourceArns": "

You can include specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or you can include a wildcard: ProtectedResourceArns: [\"*\"], but not both.

", + "RestoreTestingSelectionForUpdate$ProtectedResourceArns": "

You can include a list of specific ARNs, such as ProtectedResourceArns: [\"arn:aws:...\", \"arn:aws:...\"] or you can include a wildcard: ProtectedResourceArns: [\"*\"], but not both.

" } }, "stringMap": { @@ -2240,7 +2652,8 @@ "refs": { "ControlScope$Tags": "

The tag key-value pair applied to those Amazon Web Services resources that you want to trigger an evaluation for a rule. A maximum of one key-value pair can be provided. The tag value is optional, but it cannot be an empty string. The structure to assign a tag is: [{\"Key\":\"string\",\"Value\":\"string\"}].

", "CreateFrameworkInput$FrameworkTags": "

Metadata that you can assign to help organize the frameworks that you create. Each tag is a key-value pair.

", - "CreateReportPlanInput$ReportPlanTags": "

Metadata that you can assign to help organize the report plans that you create. Each tag is a key-value pair.

" + "CreateReportPlanInput$ReportPlanTags": "

Metadata that you can assign to help organize the report plans that you create. Each tag is a key-value pair.

", + "GetRestoreTestingInferredMetadataOutput$InferredMetadata": "

This is a string map of the metadata inferred from the request.

" } }, "timestamp": { @@ -2250,6 +2663,7 @@ "BackupJob$CompletionDate": "

The date and time a job to create a backup job is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupJob$ExpectedCompletionDate": "

The date and time a job to back up resources is expected to be completed, in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "BackupJob$StartBy": "

Specifies the time in Unix format and Coordinated Universal Time (UTC) when a backup job must be started before it is canceled. The value is calculated by adding the start window to the scheduled time. So if the scheduled time were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 PM on the date specified. The value of StartBy is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "BackupJob$InitiationDate": "

This is the date on which the backup job was initiated.

", "BackupJobSummary$StartTime": "

The value of time in number format of a job start time.

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

", "BackupJobSummary$EndTime": "

The value of time in number format of a job end time.

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

", "BackupPlansListMember$CreationDate": "

The date and time a resource backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", @@ -2277,16 +2691,20 @@ "DescribeBackupJobOutput$CompletionDate": "

The date and time that a job to create a backup job is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeBackupJobOutput$ExpectedCompletionDate": "

The date and time that a job to back up resources is expected to be completed, in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeBackupJobOutput$StartBy": "

Specifies the time in Unix format and Coordinated Universal Time (UTC) when a backup job must be started before it is canceled. The value is calculated by adding the start window to the scheduled time. So if the scheduled time were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 PM on the date specified. The value of StartBy is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeBackupJobOutput$InitiationDate": "

This is the date a backup job was initiated.

", "DescribeBackupVaultOutput$CreationDate": "

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

", "DescribeBackupVaultOutput$LockDate": "

The date and time when Backup Vault Lock configuration cannot be changed or deleted.

If you applied Vault Lock to your vault without specifying a lock date, you can change any of your Vault Lock settings, or delete Vault Lock from the vault entirely, at any time.

This value is in Unix format, Coordinated Universal Time (UTC), and accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeFrameworkOutput$CreationTime": "

The date and time that a framework is created, in ISO 8601 representation. The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC.

", "DescribeGlobalSettingsOutput$LastUpdateTime": "

The date and time that the flag isCrossAccountBackupEnabled was last updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeProtectedResourceOutput$LastBackupTime": "

The date and time that a resource was last backed up, in Unix format and Coordinated Universal Time (UTC). The value of LastBackupTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeProtectedResourceOutput$LatestRestoreJobCreationDate": "

This is the creation date of the most recent restore job.

", + "DescribeProtectedResourceOutput$LatestRestoreRecoveryPointCreationDate": "

This is the date the most recent recovery point was created.

", "DescribeRecoveryPointOutput$CreationDate": "

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

", "DescribeRecoveryPointOutput$CompletionDate": "

The date and time that a job to create a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRecoveryPointOutput$LastRestoreTime": "

The date and time that a recovery point was last restored, in Unix format and Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRestoreJobOutput$CreationDate": "

The date and time that a restore job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "DescribeRestoreJobOutput$CompletionDate": "

The date and time that a job to restore a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "DescribeRestoreJobOutput$RecoveryPointCreationDate": "

This is the creation date of the recovery point made by the specifed restore job.

", "Framework$CreationTime": "

The date and time that a framework is created, in ISO 8601 representation. The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC.

", "GetBackupPlanOutput$CreationDate": "

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

", "GetBackupPlanOutput$DeletionDate": "

The date and time that a backup plan is deleted, in Unix format and Coordinated Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", @@ -2309,6 +2727,8 @@ "ListRecoveryPointsByBackupVaultInput$ByCreatedAfter": "

Returns only recovery points that were created after the specified timestamp.

", "ListReportJobsInput$ByCreationBefore": "

Returns only report jobs that were created before the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

", "ListReportJobsInput$ByCreationAfter": "

Returns only report jobs that were created after the date and time specified in Unix format and Coordinated Universal Time (UTC). For example, the value 1516925490 represents Friday, January 26, 2018 12:11:30 AM.

", + "ListRestoreJobsByProtectedResourceInput$ByRecoveryPointCreationDateAfter": "

Returns only restore jobs of recovery points that were created after the specified date.

", + "ListRestoreJobsByProtectedResourceInput$ByRecoveryPointCreationDateBefore": "

Returns only restore jobs of recovery points that were created before the specified date.

", "ListRestoreJobsInput$ByCreatedBefore": "

Returns only restore jobs that were created before the specified date.

", "ListRestoreJobsInput$ByCreatedAfter": "

Returns only restore jobs that were created after the specified date.

", "ListRestoreJobsInput$ByCompleteBefore": "

Returns only copy jobs completed before a date expressed in Unix format and Coordinated Universal Time (UTC).

", @@ -2327,6 +2747,7 @@ "RestoreJobSummary$EndTime": "

The value of time in number format of a job end time.

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

", "RestoreJobsListMember$CreationDate": "

The date and time a restore job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "RestoreJobsListMember$CompletionDate": "

The date and time a job to restore a recovery point is completed, in Unix format and Coordinated Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", + "RestoreJobsListMember$RecoveryPointCreationDate": "

The date on which a recovery point was created.

", "StartBackupJobOutput$CreationDate": "

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

", "StartCopyJobOutput$CreationDate": "

The date and time that a copy job is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", "UpdateBackupPlanOutput$CreationDate": "

The date and time a backup plan is created, in Unix format and Coordinated Universal Time (UTC). The value of CreationDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.

", diff --git a/models/apis/backup/2018-11-15/endpoint-tests-1.json b/models/apis/backup/2018-11-15/endpoint-tests-1.json index a040669ac04..4985c744eb0 100644 --- a/models/apis/backup/2018-11-15/endpoint-tests-1.json +++ b/models/apis/backup/2018-11-15/endpoint-tests-1.json @@ -607,17 +607,6 @@ "expect": { "error": "Invalid Configuration: Missing Region" } - }, - { - "documentation": "Partition doesn't support DualStack", - "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" - }, - "params": { - "Region": "us-isob-east-1", - "UseFIPS": false, - "UseDualStack": true - } } ], "version": "1.0" diff --git a/models/apis/backup/2018-11-15/paginators-1.json b/models/apis/backup/2018-11-15/paginators-1.json index 9fce4ec3072..ceb89c04694 100644 --- a/models/apis/backup/2018-11-15/paginators-1.json +++ b/models/apis/backup/2018-11-15/paginators-1.json @@ -114,6 +114,24 @@ "limit_key": "MaxResults", "result_key": "RestoreJobs" }, + "ListRestoreJobsByProtectedResource": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreJobs" + }, + "ListRestoreTestingPlans": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreTestingPlans" + }, + "ListRestoreTestingSelections": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "RestoreTestingSelections" + }, "ListTags": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/controltower/2018-05-10/api-2.json b/models/apis/controltower/2018-05-10/api-2.json index dab551ecb42..160feab4bfd 100644 --- a/models/apis/controltower/2018-05-10/api-2.json +++ b/models/apis/controltower/2018-05-10/api-2.json @@ -458,7 +458,8 @@ "ControlOperationType": { "enum": [ "ENABLE_CONTROL", - "DISABLE_CONTROL" + "DISABLE_CONTROL", + "UPDATE_ENABLED_CONTROL" ], "type": "string" }, @@ -1115,6 +1116,17 @@ "members": {}, "type": "structure" }, + "UpdateEnabledControlOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, "UpdateLandingZoneOutput": { "members": { "operationIdentifier": { diff --git a/models/apis/controltower/2018-05-10/docs-2.json b/models/apis/controltower/2018-05-10/docs-2.json index bc12815a461..bc23dce3055 100644 --- a/models/apis/controltower/2018-05-10/docs-2.json +++ b/models/apis/controltower/2018-05-10/docs-2.json @@ -1,22 +1,23 @@ { "version": "2.0", - "service": "

These interfaces allow you to apply the Amazon Web Services library of pre-defined controls to your organizational units, programmatically. In Amazon Web Services Control Tower, the terms \"control\" and \"guardrail\" are synonyms.

To call these APIs, you'll need to know:

To get the controlIdentifier for your AWS Control Tower control:

The controlIdentifier is an ARN that is specified for each control. You can view the controlIdentifier in the console on the Control details page, as well as in the documentation.

The controlIdentifier is unique in each Amazon Web Services Region for each control. You can find the controlIdentifier for each Region and control in the Tables of control metadata in the Amazon Web Services Control Tower User Guide.

A quick-reference list of control identifers for the Amazon Web Services Control Tower legacy Strongly recommended and Elective controls is given in Resource identifiers for APIs and controls in the Controls reference guide section of the Amazon Web Services Control Tower User Guide. Remember that Mandatory controls cannot be added or removed.

ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME}

Example:

arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED

To get the targetIdentifier:

The targetIdentifier is the ARN for an OU.

In the Amazon Web Services Organizations console, you can find the ARN for the OU on the Organizational unit details page associated with that OU.

OU ARN format:

arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}

Details and examples

To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower

Recording API Requests

Amazon Web Services Control Tower supports Amazon Web Services CloudTrail, a service that records Amazon Web Services API calls for your Amazon Web Services account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine which requests the Amazon Web Services Control Tower service received, who made the request and when, and so on. For more about Amazon Web Services Control Tower and its support for CloudTrail, see Logging Amazon Web Services Control Tower Actions with Amazon Web Services CloudTrail in the Amazon Web Services Control Tower User Guide. To learn more about CloudTrail, including how to turn it on and find your log files, see the Amazon Web Services CloudTrail User Guide.

", + "service": "

These interfaces allow you to apply the Amazon Web Services library of pre-defined controls to your organizational units, programmatically. In Amazon Web Services Control Tower, the terms \"control\" and \"guardrail\" are synonyms.

To call these APIs, you'll need to know:

To get the controlIdentifier for your Amazon Web Services Control Tower control:

The controlIdentifier is an ARN that is specified for each control. You can view the controlIdentifier in the console on the Control details page, as well as in the documentation.

The controlIdentifier is unique in each Amazon Web Services Region for each control. You can find the controlIdentifier for each Region and control in the Tables of control metadata in the Amazon Web Services Control Tower User Guide.

A quick-reference list of control identifers for the Amazon Web Services Control Tower legacy Strongly recommended and Elective controls is given in Resource identifiers for APIs and controls in the Controls reference guide section of the Amazon Web Services Control Tower User Guide. Remember that Mandatory controls cannot be added or removed.

ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME}

Example:

arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED

To get the targetIdentifier:

The targetIdentifier is the ARN for an OU.

In the Amazon Web Services Organizations console, you can find the ARN for the OU on the Organizational unit details page associated with that OU.

OU ARN format:

arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}

Details and examples

To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower

Recording API Requests

Amazon Web Services Control Tower supports Amazon Web Services CloudTrail, a service that records Amazon Web Services API calls for your Amazon Web Services account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine which requests the Amazon Web Services Control Tower service received, who made the request and when, and so on. For more about Amazon Web Services Control Tower and its support for CloudTrail, see Logging Amazon Web Services Control Tower Actions with Amazon Web Services CloudTrail in the Amazon Web Services Control Tower User Guide. To learn more about CloudTrail, including how to turn it on and find your log files, see the Amazon Web Services CloudTrail User Guide.

", "operations": { - "CreateLandingZone": "

Creates a new landing zone. This starts an asynchronous operation that creates and configures a landing zone based on the parameters specified in the manifest JSON file.

", - "DeleteLandingZone": "

This decommissions a landing zone. This starts an asynchronous operation that deletes Amazon Web Services Control Tower resources deployed in Amazon Web Services Control Tower managed accounts.

", + "CreateLandingZone": "

Creates a new landing zone. This API call starts an asynchronous operation that creates and configures a landing zone, based on the parameters specified in the manifest JSON file.

", + "DeleteLandingZone": "

Decommissions a landing zone. This API call starts an asynchronous operation that deletes Amazon Web Services Control Tower resources deployed in accounts managed by Amazon Web Services Control Tower.

", "DisableControl": "

This API call turns off a control. It starts an asynchronous operation that deletes Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "EnableControl": "

This API call activates a control. It starts an asynchronous operation that creates Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources created will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "GetControlOperation": "

Returns the status of a particular EnableControl or DisableControl operation. Displays a message in case of error. Details for an operation are available for 90 days. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "GetEnabledControl": "

Retrieves details about an enabled control. For usage examples, see the Amazon Web Services Control Tower User Guide .

", - "GetLandingZone": "

Returns details about the landing zone. Displays a message in case of error.

", - "GetLandingZoneOperation": "

Returns the status of the specified landing zone operation. Details for an operation are available for X days.

", + "GetLandingZone": "

Returns details about the landing zone. Displays a message in case of error.

", + "GetLandingZoneOperation": "

Returns the status of the specified landing zone operation. Details for an operation are available for 60 days.

", "ListEnabledControls": "

Lists the controls enabled by Amazon Web Services Control Tower on the specified organizational unit and the accounts it contains. For usage examples, see the Amazon Web Services Control Tower User Guide .

", - "ListLandingZones": "

Returns the landing zone ARN for the landing zone deployed in your managed account. This API also creates an ARN for existing accounts that do not yet have a landing zone ARN.

The return limit is one landing zone ARN.

", + "ListLandingZones": "

Returns the landing zone ARN for the landing zone deployed in your managed account. This API also creates an ARN for existing accounts that do not yet have a landing zone ARN.

Returns one landing zone ARN.

", "ListTagsForResource": "

Returns a list of tags associated with the resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", - "ResetLandingZone": "

This API call resets a landing zone. It starts an asynchronous operation that resets the landing zone to the parameters specified in its original configuration.

", + "ResetLandingZone": "

This API call resets a landing zone. It starts an asynchronous operation that resets the landing zone to the parameters specified in its original configuration.

", "TagResource": "

Applies tags to a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "UntagResource": "

Removes tags from a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", - "UpdateLandingZone": "

This API call updates the landing zone. It starts an asynchronous operation that updates the landing zone based on the new landing zone version or the updated parameters specified in the updated manifest file.

" + "UpdateEnabledControl": "

Updates the configuration of an already enabled control.

If the enabled control shows an EnablementStatus of SUCCEEDED, supply parameters that are different from the currently configured parameters. Otherwise, Amazon Web Services Control Tower will not accept the request.

If the enabled control shows an EnablementStatus of FAILED, Amazon Web Services Control Tower will update the control to match any valid parameters that you supply.

If the DriftSummary status for the control shows as DRIFTED, you cannot call this API. Instead, you can update the control by calling DisableControl and again calling EnableControl, or you can run an extending governance operation. For usage examples, see the Amazon Web Services Control Tower User Guide

", + "UpdateLandingZone": "

This API call updates the landing zone. It starts an asynchronous operation that updates the landing zone based on the new landing zone version, or on the changed parameters specified in the updated manifest file.

" }, "shapes": { "AccessDeniedException": { @@ -27,28 +28,29 @@ "Arn": { "base": null, "refs": { - "CreateLandingZoneOutput$arn": "

The ARN of the landing zone.

", + "CreateLandingZoneOutput$arn": "

The ARN of the landing zone resource.

", "EnableControlOutput$arn": "

The ARN of the EnabledControl resource.

", "EnabledControlDetails$arn": "

The ARN of the enabled control.

", "EnabledControlSummary$arn": "

The ARN of the enabled control.

", "GetEnabledControlInput$enabledControlIdentifier": "

The controlIdentifier of the enabled control.

", - "LandingZoneDetail$arn": "

The ARN of the landing zone.

", - "LandingZoneSummary$arn": "

The ARN of the landing zone.

", + "LandingZoneDetail$arn": "

The ARN of the landing zone.

", + "LandingZoneSummary$arn": "

The ARN of the landing zone.

", "ListTagsForResourceInput$resourceArn": "

The ARN of the resource.

", "TagResourceInput$resourceArn": "

The ARN of the resource to be tagged.

", - "UntagResourceInput$resourceArn": "

The ARN of the resource.

" + "UntagResourceInput$resourceArn": "

The ARN of the resource.

", + "UpdateEnabledControlInput$enabledControlIdentifier": "

The ARN of the enabled control that will be updated.

" } }, "ConflictException": { - "base": "

Updating or deleting a resource can cause an inconsistent state.

", + "base": "

Updating or deleting the resource can cause an inconsistent state.

", "refs": { } }, "ControlIdentifier": { "base": null, "refs": { - "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny control. For information on how to find the controlIdentifier, see the overview page.

", - "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", "EnabledControlDetails$controlIdentifier": "

The control identifier of the enabled control. For information on how to find the controlIdentifier, see the overview page.

", "EnabledControlSummary$controlIdentifier": "

The controlIdentifier of the enabled control.

" } @@ -101,6 +103,13 @@ "refs": { } }, + "Document": { + "base": null, + "refs": { + "EnabledControlParameter$value": "

The value of a key/value pair. It can be of type array string, number, object, or boolean.

", + "EnabledControlParameterSummary$value": "

The value of a key/value pair.

" + } + }, "DriftStatus": { "base": null, "refs": { @@ -108,7 +117,7 @@ } }, "DriftStatusSummary": { - "base": "

The drift summary of the enabled control.

Amazon Web Services Control Tower expects the enabled control configuration to include all supported and governed Regions. If the enabled control differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the enabled control.

", + "base": "

The drift summary of the enabled control.

Amazon Web Services Control Tower expects the enabled control configuration to include all supported and governed Regions. If the enabled control differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the enabled control.

", "refs": { "EnabledControlDetails$driftStatusSummary": "

The drift status of the enabled control.

", "EnabledControlSummary$driftStatusSummary": "

The drift status of the enabled control.

" @@ -130,6 +139,31 @@ "GetEnabledControlOutput$enabledControlDetails": "

Information about the enabled control.

" } }, + "EnabledControlParameter": { + "base": "

A set of parameters that configure the behavior of the enabled control. A key/value pair, where Key is of type String and Value is of type Document.

", + "refs": { + "EnabledControlParameters$member": null + } + }, + "EnabledControlParameterSummaries": { + "base": null, + "refs": { + "EnabledControlDetails$parameters": "

Array of EnabledControlParameter objects.

" + } + }, + "EnabledControlParameterSummary": { + "base": "

Returns a summary of information about the parameters of an enabled control.

", + "refs": { + "EnabledControlParameterSummaries$member": null + } + }, + "EnabledControlParameters": { + "base": null, + "refs": { + "EnableControlInput$parameters": "

An array of EnabledControlParameter objects

", + "UpdateEnabledControlInput$parameters": "

A key/value pair, where Key is of type String and Value is of type Document.

" + } + }, "EnabledControlSummary": { "base": "

Returns a summary of information about an enabled control.

", "refs": { @@ -198,18 +232,18 @@ "Integer": { "base": null, "refs": { - "ThrottlingException$retryAfterSeconds": "

The number of seconds the caller should wait before retrying.

" + "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying.

" } }, "InternalServerException": { - "base": "

Unexpected error during processing of request.

", + "base": "

An unexpected error occurred during processing of a request.

", "refs": { } }, "LandingZoneDetail": { - "base": "

Information about the landing zone.

", + "base": "

Information about the landing zone.

", "refs": { - "GetLandingZoneOutput$landingZone": "

Information about the landing zone.

" + "GetLandingZoneOutput$landingZone": "

Information about the landing zone.

" } }, "LandingZoneDriftStatus": { @@ -219,21 +253,21 @@ } }, "LandingZoneDriftStatusSummary": { - "base": "

The drift status summary of the landing zone.

If the landing zone differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the landing zone.

", + "base": "

The drift status summary of the landing zone.

If the landing zone differs from the expected configuration, it is defined to be in a state of drift. You can repair this drift by resetting the landing zone.

", "refs": { - "LandingZoneDetail$driftStatus": "

The drift status of the landing zone.

" + "LandingZoneDetail$driftStatus": "

The drift status of the landing zone.

" } }, "LandingZoneOperationDetail": { - "base": "

Information about a landing zone operation.

", + "base": "

Information about a landing zone operation.

", "refs": { - "GetLandingZoneOperationOutput$operationDetails": "

The landing zone operation details.

" + "GetLandingZoneOperationOutput$operationDetails": "

Details about a landing zone operation.

" } }, "LandingZoneOperationStatus": { "base": null, "refs": { - "LandingZoneOperationDetail$status": "

The landing zone operation status.

Valid values:

" + "LandingZoneOperationDetail$status": "

Valid values:

" } }, "LandingZoneOperationType": { @@ -245,11 +279,11 @@ "LandingZoneStatus": { "base": null, "refs": { - "LandingZoneDetail$status": "

The landing zone deployment status.

Valid values:

" + "LandingZoneDetail$status": "

The landing zone deployment status.

" } }, "LandingZoneSummary": { - "base": "

Returns a summary of information about a landing zone.

", + "base": "

Returns a summary of information about a landing zone.

", "refs": { "ListLandingZonesOutputLandingZonesList$member": null } @@ -257,10 +291,10 @@ "LandingZoneVersion": { "base": null, "refs": { - "CreateLandingZoneInput$version": "

The landing zone version.

", - "LandingZoneDetail$latestAvailableVersion": "

The latest available version of the landing zone.

", - "LandingZoneDetail$version": "

The landing zone's current deployed version.

", - "UpdateLandingZoneInput$version": "

The landing zone version.

" + "CreateLandingZoneInput$version": "

The landing zone version, for example, 3.0.

", + "LandingZoneDetail$latestAvailableVersion": "

The latest available version of the landing zone.

", + "LandingZoneDetail$version": "

The landing zone's current deployed version.

", + "UpdateLandingZoneInput$version": "

The landing zone version, for example, 3.2.

" } }, "ListEnabledControlsInput": { @@ -281,7 +315,7 @@ "ListLandingZonesMaxResults": { "base": null, "refs": { - "ListLandingZonesInput$maxResults": "

The maximum number of returned landing zone ARNs.

" + "ListLandingZonesInput$maxResults": "

The maximum number of returned landing zone ARNs, which is one.

" } }, "ListLandingZonesOutput": { @@ -292,7 +326,7 @@ "ListLandingZonesOutputLandingZonesList": { "base": null, "refs": { - "ListLandingZonesOutput$landingZones": "

The ARN of the landing zone.

" + "ListLandingZonesOutput$landingZones": "

The ARN of the landing zone.

" } }, "ListTagsForResourceInput": { @@ -309,8 +343,8 @@ "base": null, "refs": { "CreateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

", - "LandingZoneDetail$manifest": "

The landing zone manifest.yaml text file that specifies the landing zone configurations.

", - "UpdateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file

" + "LandingZoneDetail$manifest": "

The landing zone manifest.yaml text file that specifies the landing zone configurations.

", + "UpdateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

" } }, "MaxResults": { @@ -322,14 +356,15 @@ "OperationIdentifier": { "base": null, "refs": { - "CreateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a CreateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", - "DeleteLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a DeleteLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", + "CreateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a CreateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", + "DeleteLandingZoneOutput$operationIdentifier": "

>A unique identifier assigned to a DeleteLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", "DisableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", "EnableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", "EnablementStatusSummary$lastOperationIdentifier": "

The last operation identifier for the enabled control.

", "GetControlOperationInput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", - "GetLandingZoneOperationInput$operationIdentifier": "

A unique identifier assigned to a landing zone operation.

", - "ResetLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a ResetLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", + "GetLandingZoneOperationInput$operationIdentifier": "

A unique identifier assigned to a landing zone operation.

", + "ResetLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a ResetLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", + "UpdateEnabledControlOutput$operationIdentifier": "

The operation identifier for this UpdateEnabledControl operation.

", "UpdateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a UpdateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

" } }, @@ -356,12 +391,12 @@ } }, "ResourceNotFoundException": { - "base": "

Request references a resource which does not exist.

", + "base": "

The request references a resource that does not exist.

", "refs": { } }, "ServiceQuotaExceededException": { - "base": "

Request would cause a service quota to be exceeded. The limit is 10 concurrent operations.

", + "base": "

The request would cause a service quota to be exceeded. The limit is 10 concurrent operations.

", "refs": { } }, @@ -371,21 +406,23 @@ "AccessDeniedException$message": null, "ConflictException$message": null, "ControlOperation$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", - "DeleteLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", - "GetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", + "DeleteLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", + "EnabledControlParameter$key": "

The key of a key/value pair. It is of type string.

", + "EnabledControlParameterSummary$key": "

The key of a key/value pair.

", + "GetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "InternalServerException$message": null, - "LandingZoneOperationDetail$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", + "LandingZoneOperationDetail$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", "ListEnabledControlsInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", - "ListEnabledControlsOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the current response is the end of the results.

", - "ListLandingZonesInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", - "ListLandingZonesOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the current response is the end of the results.

", - "ResetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", + "ListEnabledControlsOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the response is the end of the results.

", + "ListLandingZonesInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", + "ListLandingZonesOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the response is the end of the results.

", + "ResetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "ResourceNotFoundException$message": null, "ServiceQuotaExceededException$message": null, "ThrottlingException$message": null, "ThrottlingException$quotaCode": "

The ID of the service quota that was exceeded.

", - "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", - "UpdateLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", + "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", + "UpdateLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "ValidationException$message": null } }, @@ -440,7 +477,7 @@ "DisableControlInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", "EnableControlInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", "EnabledControlDetails$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

", - "EnabledControlSummary$targetIdentifier": "

The ARN of the organizational unit.

", + "EnabledControlSummary$targetIdentifier": "

The ARN of the organizational unit.

", "ListEnabledControlsInput$targetIdentifier": "

The ARN of the organizational unit. For information on how to find the targetIdentifier, see the overview page.

" } }, @@ -451,15 +488,15 @@ } }, "ThrottlingException": { - "base": "

Request was denied due to request throttling.

", + "base": "

The request was denied due to request throttling.

", "refs": { } }, "Timestamp": { "base": null, "refs": { - "LandingZoneOperationDetail$endTime": "

The landing zone operation end time.

", - "LandingZoneOperationDetail$startTime": "

The landing zone operation start time.

" + "LandingZoneOperationDetail$endTime": "

The landing zone operation end time.

", + "LandingZoneOperationDetail$startTime": "

The landing zone operation start time.

" } }, "UntagResourceInput": { @@ -472,6 +509,16 @@ "refs": { } }, + "UpdateEnabledControlInput": { + "base": null, + "refs": { + } + }, + "UpdateEnabledControlOutput": { + "base": null, + "refs": { + } + }, "UpdateLandingZoneInput": { "base": null, "refs": { @@ -483,7 +530,7 @@ } }, "ValidationException": { - "base": "

The input fails to satisfy the constraints specified by an Amazon Web Services service.

", + "base": "

The input does not satisfy the constraints specified by an Amazon Web Services service.

", "refs": { } } diff --git a/models/apis/elasticfilesystem/2015-02-01/api-2.json b/models/apis/elasticfilesystem/2015-02-01/api-2.json index 3c0b9b16e8b..3e618e227b0 100644 --- a/models/apis/elasticfilesystem/2015-02-01/api-2.json +++ b/models/apis/elasticfilesystem/2015-02-01/api-2.json @@ -93,6 +93,7 @@ {"shape":"FileSystemLimitExceeded"}, {"shape":"InsufficientThroughputCapacity"}, {"shape":"ThroughputLimitExceeded"}, + {"shape":"ConflictException"}, {"shape":"InternalServerError"} ] }, @@ -506,6 +507,27 @@ {"shape":"ThroughputLimitExceeded"}, {"shape":"TooManyRequests"} ] + }, + "UpdateFileSystemProtection":{ + "name":"UpdateFileSystemProtection", + "http":{ + "method":"PUT", + "requestUri":"/2015-02-01/file-systems/{FileSystemId}/protection", + "responseCode":200 + }, + "input":{"shape":"UpdateFileSystemProtectionRequest"}, + "output":{"shape":"FileSystemProtectionDescription"}, + "errors":[ + {"shape":"BadRequest"}, + {"shape":"FileSystemNotFound"}, + {"shape":"IncorrectFileSystemLifeCycleState"}, + {"shape":"InsufficientThroughputCapacity"}, + {"shape":"InternalServerError"}, + {"shape":"ThroughputLimitExceeded"}, + {"shape":"ReplicationAlreadyExists"}, + {"shape":"TooManyRequests"} + ], + "idempotent":true } }, "shapes":{ @@ -624,6 +646,15 @@ "min":1, "pattern":".+" }, + "ConflictException":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"ErrorCode"}, + "Message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "CreateAccessPointRequest":{ "type":"structure", "required":[ @@ -1045,7 +1076,8 @@ "members":{ "Region":{"shape":"RegionName"}, "AvailabilityZoneName":{"shape":"AvailabilityZoneName"}, - "KmsKeyId":{"shape":"KmsKeyId"} + "KmsKeyId":{"shape":"KmsKeyId"}, + "FileSystemId":{"shape":"FileSystemId"} } }, "Destinations":{ @@ -1107,7 +1139,8 @@ "ProvisionedThroughputInMibps":{"shape":"ProvisionedThroughputInMibps"}, "AvailabilityZoneName":{"shape":"AvailabilityZoneName"}, "AvailabilityZoneId":{"shape":"AvailabilityZoneId"}, - "Tags":{"shape":"Tags"} + "Tags":{"shape":"Tags"}, + "FileSystemProtection":{"shape":"FileSystemProtectionDescription"} } }, "FileSystemDescriptions":{ @@ -1160,6 +1193,12 @@ "Policy":{"shape":"Policy"} } }, + "FileSystemProtectionDescription":{ + "type":"structure", + "members":{ + "ReplicationOverwriteProtection":{"shape":"ReplicationOverwriteProtection"} + } + }, "FileSystemSize":{ "type":"structure", "required":["Value"], @@ -1536,6 +1575,15 @@ "min":1, "pattern":"^[a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-{0,1}[0-9]{0,1}$" }, + "ReplicationAlreadyExists":{ + "type":"structure", + "members":{ + "ErrorCode":{"shape":"ErrorCode"}, + "Message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":409}, + "exception":true + }, "ReplicationConfigurationDescription":{ "type":"structure", "required":[ @@ -1568,6 +1616,14 @@ "error":{"httpStatusCode":404}, "exception":true }, + "ReplicationOverwriteProtection":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED", + "REPLICATING" + ] + }, "ReplicationStatus":{ "type":"string", "enum":[ @@ -1835,6 +1891,18 @@ } } }, + "UpdateFileSystemProtectionRequest":{ + "type":"structure", + "required":["FileSystemId"], + "members":{ + "FileSystemId":{ + "shape":"FileSystemId", + "location":"uri", + "locationName":"FileSystemId" + }, + "ReplicationOverwriteProtection":{"shape":"ReplicationOverwriteProtection"} + } + }, "UpdateFileSystemRequest":{ "type":"structure", "required":["FileSystemId"], diff --git a/models/apis/elasticfilesystem/2015-02-01/docs-2.json b/models/apis/elasticfilesystem/2015-02-01/docs-2.json index 0c8f6b4d1ff..dbec3130a3e 100644 --- a/models/apis/elasticfilesystem/2015-02-01/docs-2.json +++ b/models/apis/elasticfilesystem/2015-02-01/docs-2.json @@ -5,20 +5,20 @@ "CreateAccessPoint": "

Creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in the application's own directory and any subdirectories. To learn more, see Mounting a file system using EFS access points.

If multiple requests to create access points on the same file system are sent in quick succession, and the file system is near the limit of 1,000 access points, you may experience a throttling response for these requests. This is to ensure that the file system does not exceed the stated access point limit.

This operation requires permissions for the elasticfilesystem:CreateAccessPoint action.

Access points can be tagged on creation. If tags are specified in the creation action, IAM performs additional authorization on the elasticfilesystem:TagResource action to verify if users have permissions to create tags. Therefore, you must grant explicit permissions to use the elasticfilesystem:TagResource action. For more information, see Granting permissions to tag resources during creation.

", "CreateFileSystem": "

Creates a new, empty file system. The operation requires a creation token in the request that Amazon EFS uses to ensure idempotent creation (calling the operation with same creation token has no effect). If a file system does not currently exist that is owned by the caller's Amazon Web Services account with the specified creation token, this operation does the following:

Otherwise, this operation returns a FileSystemAlreadyExists error with the ID of the existing file system.

For basic use cases, you can use a randomly generated UUID for the creation token.

The idempotent operation allows you to retry a CreateFileSystem call without risk of creating an extra file system. This can happen when an initial call fails in a way that leaves it uncertain whether or not a file system was actually created. An example might be that a transport level timeout occurred or your connection was reset. As long as you use the same creation token, if the initial call had succeeded in creating a file system, the client can learn of its existence from the FileSystemAlreadyExists error.

For more information, see Creating a file system in the Amazon EFS User Guide.

The CreateFileSystem call returns while the file system's lifecycle state is still creating. You can check the file system creation status by calling the DescribeFileSystems operation, which among other things returns the file system state.

This operation accepts an optional PerformanceMode parameter that you choose for your file system. We recommend generalPurpose performance mode for all file systems. File systems using the maxIO mode is a previous generation performance type that is designed for highly parallelized workloads that can tolerate higher latencies than the General Purpose mode. Max I/O mode is not supported for One Zone file systems or file systems that use Elastic throughput.

Due to the higher per-operation latencies with Max I/O, we recommend using General Purpose performance mode for all file systems.

The performance mode can't be changed after the file system has been created. For more information, see Amazon EFS performance modes.

You can set the throughput mode for the file system using the ThroughputMode parameter.

After the file system is fully created, Amazon EFS sets its lifecycle state to available, at which point you can create one or more mount targets for the file system in your VPC. For more information, see CreateMountTarget. You mount your Amazon EFS file system on an EC2 instances in your VPC by using the mount target. For more information, see Amazon EFS: How it Works.

This operation requires permissions for the elasticfilesystem:CreateFileSystem action.

File systems can be tagged on creation. If tags are specified in the creation action, IAM performs additional authorization on the elasticfilesystem:TagResource action to verify if users have permissions to create tags. Therefore, you must grant explicit permissions to use the elasticfilesystem:TagResource action. For more information, see Granting permissions to tag resources during creation.

", "CreateMountTarget": "

Creates a mount target for a file system. You can then mount the file system on EC2 instances by using the mount target.

You can create one mount target in each Availability Zone in your VPC. All EC2 instances in a VPC within a given Availability Zone share a single mount target for a given file system. If you have multiple subnets in an Availability Zone, you create a mount target in one of the subnets. EC2 instances do not need to be in the same subnet as the mount target in order to access their file system.

You can create only one mount target for a One Zone file system. You must create that mount target in the same Availability Zone in which the file system is located. Use the AvailabilityZoneName and AvailabiltyZoneId properties in the DescribeFileSystems response object to get this information. Use the subnetId associated with the file system's Availability Zone when creating the mount target.

For more information, see Amazon EFS: How it Works.

To create a mount target for a file system, the file system's lifecycle state must be available. For more information, see DescribeFileSystems.

In the request, provide the following:

After creating the mount target, Amazon EFS returns a response that includes, a MountTargetId and an IpAddress. You use this IP address when mounting the file system in an EC2 instance. You can also use the mount target's DNS name when mounting the file system. The EC2 instance on which you mount the file system by using the mount target can resolve the mount target's DNS name to its IP address. For more information, see How it Works: Implementation Overview.

Note that you can create mount targets for a file system in only one VPC, and there can be only one mount target per Availability Zone. That is, if the file system already has one or more mount targets created for it, the subnet specified in the request to add another mount target must meet the following requirements:

If the request satisfies the requirements, Amazon EFS does the following:

The CreateMountTarget call returns only after creating the network interface, but while the mount target state is still creating, you can check the mount target creation status by calling the DescribeMountTargets operation, which among other things returns the mount target state.

We recommend that you create a mount target in each of the Availability Zones. There are cost considerations for using a file system in an Availability Zone through a mount target created in another Availability Zone. For more information, see Amazon EFS. In addition, by always using a mount target local to the instance's Availability Zone, you eliminate a partial failure scenario. If the Availability Zone in which your mount target is created goes down, then you can't access your file system through that mount target.

This operation requires permissions for the following action on the file system:

This operation also requires permissions for the following Amazon EC2 actions:

", - "CreateReplicationConfiguration": "

Creates a replication configuration that replicates an existing EFS file system to a new, read-only file system. For more information, see Amazon EFS replication in the Amazon EFS User Guide. The replication configuration specifies the following:

The following properties are set by default:

The following properties are turned off by default:

For more information, see Amazon EFS replication in the Amazon EFS User Guide.

", + "CreateReplicationConfiguration": "

Creates a replication configuration that replicates an existing EFS file system to a new, read-only file system. For more information, see Amazon EFS replication in the Amazon EFS User Guide. The replication configuration specifies the following:

After the file system is created, you cannot change the KMS key.

For new destination file systems, the following properties are set by default:

For more information, see Amazon EFS replication in the Amazon EFS User Guide.

", "CreateTags": "

DEPRECATED - CreateTags is deprecated and not maintained. To create tags for EFS resources, use the API action.

Creates or overwrites tags associated with a file system. Each tag is a key-value pair. If a tag key specified in the request already exists on the file system, this operation overwrites its value with the value provided in the request. If you add the Name tag to your file system, Amazon EFS returns it in the response to the DescribeFileSystems operation.

This operation requires permission for the elasticfilesystem:CreateTags action.

", "DeleteAccessPoint": "

Deletes the specified access point. After deletion is complete, new clients can no longer connect to the access points. Clients connected to the access point at the time of deletion will continue to function until they terminate their connection.

This operation requires permissions for the elasticfilesystem:DeleteAccessPoint action.

", "DeleteFileSystem": "

Deletes a file system, permanently severing access to its contents. Upon return, the file system no longer exists and you can't access any contents of the deleted file system.

You need to manually delete mount targets attached to a file system before you can delete an EFS file system. This step is performed for you when you use the Amazon Web Services console to delete a file system.

You cannot delete a file system that is part of an EFS Replication configuration. You need to delete the replication configuration first.

You can't delete a file system that is in use. That is, if the file system has any mount targets, you must first delete them. For more information, see DescribeMountTargets and DeleteMountTarget.

The DeleteFileSystem call returns while the file system state is still deleting. You can check the file system deletion status by calling the DescribeFileSystems operation, which returns a list of file systems in your account. If you pass file system ID or creation token for the deleted file system, the DescribeFileSystems returns a 404 FileSystemNotFound error.

This operation requires permissions for the elasticfilesystem:DeleteFileSystem action.

", "DeleteFileSystemPolicy": "

Deletes the FileSystemPolicy for the specified file system. The default FileSystemPolicy goes into effect once the existing policy is deleted. For more information about the default file system policy, see Using Resource-based Policies with EFS.

This operation requires permissions for the elasticfilesystem:DeleteFileSystemPolicy action.

", "DeleteMountTarget": "

Deletes the specified mount target.

This operation forcibly breaks any mounts of the file system by using the mount target that is being deleted, which might disrupt instances or applications using those mounts. To avoid applications getting cut off abruptly, you might consider unmounting any mounts of the mount target, if feasible. The operation also deletes the associated network interface. Uncommitted writes might be lost, but breaking a mount target using this operation does not corrupt the file system itself. The file system you created remains. You can mount an EC2 instance in your VPC by using another mount target.

This operation requires permissions for the following action on the file system:

The DeleteMountTarget call returns while the mount target state is still deleting. You can check the mount target deletion by calling the DescribeMountTargets operation, which returns a list of mount target descriptions for the given file system.

The operation also requires permissions for the following Amazon EC2 action on the mount target's network interface:

", - "DeleteReplicationConfiguration": "

Deletes an existing replication configuration. Deleting a replication configuration ends the replication process. After a replication configuration is deleted, the destination file system is no longer read-only. You can write to the destination file system after its status becomes Writeable.

", + "DeleteReplicationConfiguration": "

Deletes a replication configuration. Deleting a replication configuration ends the replication process. After a replication configuration is deleted, the destination file system becomes Writeable and its replication overwrite protection is re-enabled. For more information, see Delete a replication configuration.

This operation requires permissions for the elasticfilesystem:DeleteReplicationConfiguration action.

", "DeleteTags": "

DEPRECATED - DeleteTags is deprecated and not maintained. To remove tags from EFS resources, use the API action.

Deletes the specified tags from a file system. If the DeleteTags request includes a tag key that doesn't exist, Amazon EFS ignores it and doesn't cause an error. For more information about tags and related restrictions, see Tag restrictions in the Billing and Cost Management User Guide.

This operation requires permissions for the elasticfilesystem:DeleteTags action.

", "DescribeAccessPoints": "

Returns the description of a specific Amazon EFS access point if the AccessPointId is provided. If you provide an EFS FileSystemId, it returns descriptions of all access points for that file system. You can provide either an AccessPointId or a FileSystemId in the request, but not both.

This operation requires permissions for the elasticfilesystem:DescribeAccessPoints action.

", "DescribeAccountPreferences": "

Returns the account preferences settings for the Amazon Web Services account associated with the user making the request, in the current Amazon Web Services Region.

", "DescribeBackupPolicy": "

Returns the backup policy for the specified EFS file system.

", "DescribeFileSystemPolicy": "

Returns the FileSystemPolicy for the specified EFS file system.

This operation requires permissions for the elasticfilesystem:DescribeFileSystemPolicy action.

", "DescribeFileSystems": "

Returns the description of a specific Amazon EFS file system if either the file system CreationToken or the FileSystemId is provided. Otherwise, it returns descriptions of all file systems owned by the caller's Amazon Web Services account in the Amazon Web Services Region of the endpoint that you're calling.

When retrieving all file system descriptions, you can optionally specify the MaxItems parameter to limit the number of descriptions in a response. This number is automatically set to 100. If more file system descriptions remain, Amazon EFS returns a NextMarker, an opaque token, in the response. In this case, you should send a subsequent request with the Marker request parameter set to the value of NextMarker.

To retrieve a list of your file system descriptions, this operation is used in an iterative process, where DescribeFileSystems is called first without the Marker and then the operation continues to call it with the Marker parameter set to the value of the NextMarker from the previous response until the response has no NextMarker.

The order of file systems returned in the response of one DescribeFileSystems call and the order of file systems returned across the responses of a multi-call iteration is unspecified.

This operation requires permissions for the elasticfilesystem:DescribeFileSystems action.

", - "DescribeLifecycleConfiguration": "

Returns the current LifecycleConfiguration object for the specified Amazon EFS file system. Llifecycle management uses the LifecycleConfiguration object to identify when to move files between storage classes. For a file system without a LifecycleConfiguration object, the call returns an empty array in the response.

This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration operation.

", + "DescribeLifecycleConfiguration": "

Returns the current LifecycleConfiguration object for the specified Amazon EFS file system. Lifecycle management uses the LifecycleConfiguration object to identify when to move files between storage classes. For a file system without a LifecycleConfiguration object, the call returns an empty array in the response.

This operation requires permissions for the elasticfilesystem:DescribeLifecycleConfiguration operation.

", "DescribeMountTargetSecurityGroups": "

Returns the security groups currently in effect for a mount target. This operation requires that the network interface of the mount target has been created and the lifecycle state of the mount target is not deleted.

This operation requires permissions for the following actions:

", "DescribeMountTargets": "

Returns the descriptions of all the current mount targets, or a specific mount target, for a file system. When requesting all of the current mount targets, the order of mount targets returned in the response is unspecified.

This operation requires permissions for the elasticfilesystem:DescribeMountTargets action, on either the file system ID that you specify in FileSystemId, or on the file system of the mount target that you specify in MountTargetId.

", "DescribeReplicationConfigurations": "

Retrieves the replication configuration for a specific file system. If a file system is not specified, all of the replication configurations for the Amazon Web Services account in an Amazon Web Services Region are retrieved.

", @@ -28,10 +28,11 @@ "PutAccountPreferences": "

Use this operation to set the account preference in the current Amazon Web Services Region to use long 17 character (63 bit) or short 8 character (32 bit) resource IDs for new EFS file system and mount target resources. All existing resource IDs are not affected by any changes you make. You can set the ID preference during the opt-in period as EFS transitions to long resource IDs. For more information, see Managing Amazon EFS resource IDs.

Starting in October, 2021, you will receive an error if you try to set the account preference to use the short 8 character format resource ID. Contact Amazon Web Services support if you receive an error and must use short IDs for file system and mount target resources.

", "PutBackupPolicy": "

Updates the file system's backup policy. Use this action to start or stop automatic backups of the file system.

", "PutFileSystemPolicy": "

Applies an Amazon EFS FileSystemPolicy to an Amazon EFS file system. A file system policy is an IAM resource-based policy and can contain multiple policy statements. A file system always has exactly one file system policy, which can be the default policy or an explicit policy set or updated using this API operation. EFS file system policies have a 20,000 character limit. When an explicit policy is set, it overrides the default policy. For more information about the default file system policy, see Default EFS File System Policy.

EFS file system policies have a 20,000 character limit.

This operation requires permissions for the elasticfilesystem:PutFileSystemPolicy action.

", - "PutLifecycleConfiguration": "

Use this action to manage storage of your file system. A LifecycleConfiguration consists of one or more LifecyclePolicy objects that define the following:

For more information, see Managing file system storage.

Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration object already exists for the specified file system, a PutLifecycleConfiguration call modifies the existing configuration. A PutLifecycleConfiguration call with an empty LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration for the file system.

In the request, specify the following:

This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration operation.

To apply a LifecycleConfiguration object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.

", + "PutLifecycleConfiguration": "

Use this action to manage storage for your file system. A LifecycleConfiguration consists of one or more LifecyclePolicy objects that define the following:

For more information, see Managing file system storage.

Each Amazon EFS file system supports one lifecycle configuration, which applies to all files in the file system. If a LifecycleConfiguration object already exists for the specified file system, a PutLifecycleConfiguration call modifies the existing configuration. A PutLifecycleConfiguration call with an empty LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration. In the request, specify the following:

This operation requires permissions for the elasticfilesystem:PutLifecycleConfiguration operation.

To apply a LifecycleConfiguration object to an encrypted file system, you need the same Key Management Service permissions as when you created the encrypted file system.

", "TagResource": "

Creates a tag for an EFS resource. You can create tags for EFS file systems and access points using this API operation.

This operation requires permissions for the elasticfilesystem:TagResource action.

", "UntagResource": "

Removes tags from an EFS resource. You can remove tags from EFS file systems and access points using this API operation.

This operation requires permissions for the elasticfilesystem:UntagResource action.

", - "UpdateFileSystem": "

Updates the throughput mode or the amount of provisioned throughput of an existing file system.

" + "UpdateFileSystem": "

Updates the throughput mode or the amount of provisioned throughput of an existing file system.

", + "UpdateFileSystemProtection": "

Updates protection on the file system.

This operation requires permissions for the elasticfilesystem:UpdateFileSystemProtection action.

" }, "shapes": { "AccessPointAlreadyExists": { @@ -142,6 +143,11 @@ "CreateAccessPointRequest$ClientToken": "

A string of up to 64 ASCII characters that Amazon EFS uses to ensure idempotent creation.

" } }, + "ConflictException": { + "base": "

Returned if the source file system in a replication is encrypted but the destination file system is unencrypted.

", + "refs": { + } + }, "CreateAccessPointRequest": { "base": null, "refs": { @@ -308,7 +314,7 @@ } }, "DestinationToCreate": { - "base": "

Describes the destination file system to create in the replication configuration.

", + "base": "

Describes the new or existing destination file system for the replication configuration.

", "refs": { "DestinationsToCreate$member": null } @@ -340,6 +346,7 @@ "AccessPointNotFound$ErrorCode": null, "AvailabilityZonesMismatch$ErrorCode": null, "BadRequest$ErrorCode": null, + "ConflictException$ErrorCode": null, "DependencyTimeout$ErrorCode": null, "FileSystemAlreadyExists$ErrorCode": null, "FileSystemInUse$ErrorCode": null, @@ -356,6 +363,7 @@ "NetworkInterfaceLimitExceeded$ErrorCode": null, "NoFreeAddressesInSubnet$ErrorCode": null, "PolicyNotFound$ErrorCode": null, + "ReplicationAlreadyExists$ErrorCode": null, "ReplicationNotFound$ErrorCode": "

ReplicationNotFound

", "SecurityGroupLimitExceeded$ErrorCode": null, "SecurityGroupNotFound$ErrorCode": null, @@ -375,6 +383,7 @@ "AccessPointNotFound$Message": null, "AvailabilityZonesMismatch$Message": null, "BadRequest$Message": null, + "ConflictException$Message": null, "DependencyTimeout$Message": null, "FileSystemAlreadyExists$Message": null, "FileSystemInUse$Message": null, @@ -391,6 +400,7 @@ "NetworkInterfaceLimitExceeded$Message": null, "NoFreeAddressesInSubnet$Message": null, "PolicyNotFound$Message": null, + "ReplicationAlreadyExists$Message": null, "ReplicationNotFound$Message": null, "SecurityGroupLimitExceeded$Message": null, "SecurityGroupNotFound$Message": null, @@ -448,6 +458,7 @@ "DescribeReplicationConfigurationsRequest$FileSystemId": "

You can retrieve the replication configuration for a specific file system by providing its file system ID.

", "DescribeTagsRequest$FileSystemId": "

The ID of the file system whose tag set you want to retrieve.

", "Destination$FileSystemId": "

The ID of the destination Amazon EFS file system.

", + "DestinationToCreate$FileSystemId": "

The ID of the file system to use for the destination. The file system's replication overwrite replication must be disabled. If you do not provide an ID, then EFS creates a new file system for the replication destination.

", "FileSystemAlreadyExists$FileSystemId": null, "FileSystemDescription$FileSystemId": "

The ID of the file system, assigned by Amazon EFS.

", "FileSystemPolicyDescription$FileSystemId": "

Specifies the EFS file system to which the FileSystemPolicy applies.

", @@ -456,6 +467,7 @@ "PutFileSystemPolicyRequest$FileSystemId": "

The ID of the EFS file system that you want to create or update the FileSystemPolicy for.

", "PutLifecycleConfigurationRequest$FileSystemId": "

The ID of the file system for which you are creating the LifecycleConfiguration object (String).

", "ReplicationConfigurationDescription$SourceFileSystemId": "

The ID of the source Amazon EFS file system that is being replicated.

", + "UpdateFileSystemProtectionRequest$FileSystemId": "

The ID of the file system to update.

", "UpdateFileSystemRequest$FileSystemId": "

The ID of the file system that you want to update.

" } }, @@ -487,6 +499,12 @@ "refs": { } }, + "FileSystemProtectionDescription": { + "base": "

Describes the protection on a file system.

", + "refs": { + "FileSystemDescription$FileSystemProtection": "

Describes the protection on the file system.

" + } + }, "FileSystemSize": { "base": "

The latest known metered size (in bytes) of data stored in the file system, in its Value field, and the time at which that size was determined in its Timestamp field. The value doesn't represent the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to the file system. That is, the value represents the actual size only if the file system is not modified for a period longer than a couple of hours. Otherwise, the value is not necessarily the exact size the file system was at any instant in time.

", "refs": { @@ -547,7 +565,7 @@ "base": null, "refs": { "CreateFileSystemRequest$KmsKeyId": "

The ID of the KMS key that you want to use to protect the encrypted file system. This parameter is required only if you want to use a non-default KMS key. If this parameter is not specified, the default KMS key for Amazon EFS is used. You can specify a KMS key ID using the following formats:

If you use KmsKeyId, you must set the CreateFileSystemRequest$Encrypted parameter to true.

EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS keys with Amazon EFS file systems.

", - "DestinationToCreate$KmsKeyId": "

Specifies the Key Management Service (KMS) key that you want to use to encrypt the destination file system. If you do not specify a KMS key, Amazon EFS uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID can be in one of the following formats:

", + "DestinationToCreate$KmsKeyId": "

Specify the Key Management Service (KMS) key that you want to use to encrypt the destination file system. If you do not specify a KMS key, Amazon EFS uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID can be in one of the following formats:

", "FileSystemDescription$KmsKeyId": "

The ID of an KMS key used to protect the encrypted file system.

" } }, @@ -572,7 +590,7 @@ } }, "LifecyclePolicy": { - "base": "

Describes a policy used by Lifecycle management that specifies when to transition files into and out of the Infrequent Access (IA) and Archive storage classes. For more information, see Managing file system storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition. For more information, see the request examples in PutLifecycleConfiguration.

", + "base": "

Describes a policy used by Lifecycle management that specifies when to transition files into and out of storage classes. For more information, see Managing file system storage.

When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration API action, Amazon EFS requires that each LifecyclePolicy object have only a single transition. This means that in a request body, LifecyclePolicies must be structured as an array of LifecyclePolicy objects, one object for each transition. For more information, see the request examples in PutLifecycleConfiguration.

", "refs": { "LifecyclePolicies$member": null } @@ -774,6 +792,11 @@ "ReplicationConfigurationDescription$SourceFileSystemRegion": "

The Amazon Web Services Region in which the source EFS file system is located.

" } }, + "ReplicationAlreadyExists": { + "base": "

Returned if the file system is already included in a replication configuration.>

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

Describes the replication configuration for a specific file system.

", "refs": { @@ -791,6 +814,13 @@ "refs": { } }, + "ReplicationOverwriteProtection": { + "base": null, + "refs": { + "FileSystemProtectionDescription$ReplicationOverwriteProtection": "

The status of the file system's replication overwrite protection.

If the replication configuration is deleted, the file system's replication overwrite protection is re-enabled, the file system becomes writeable.

", + "UpdateFileSystemProtectionRequest$ReplicationOverwriteProtection": "

The status of the file system's replication overwrite protection.

If the replication configuration is deleted, the file system's replication overwrite protection is re-enabled, the file system becomes writeable.

" + } + }, "ReplicationStatus": { "base": null, "refs": { @@ -1010,6 +1040,11 @@ "refs": { } }, + "UpdateFileSystemProtectionRequest": { + "base": null, + "refs": { + } + }, "UpdateFileSystemRequest": { "base": null, "refs": { diff --git a/models/apis/fis/2020-12-01/api-2.json b/models/apis/fis/2020-12-01/api-2.json index b73b1ffbe4b..5e0b13dcdd1 100644 --- a/models/apis/fis/2020-12-01/api-2.json +++ b/models/apis/fis/2020-12-01/api-2.json @@ -29,6 +29,22 @@ {"shape":"ServiceQuotaExceededException"} ] }, + "CreateTargetAccountConfiguration":{ + "name":"CreateTargetAccountConfiguration", + "http":{ + "method":"POST", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"CreateTargetAccountConfigurationRequest"}, + "output":{"shape":"CreateTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, "DeleteExperimentTemplate":{ "name":"DeleteExperimentTemplate", "http":{ @@ -43,6 +59,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "DeleteTargetAccountConfiguration":{ + "name":"DeleteTargetAccountConfiguration", + "http":{ + "method":"DELETE", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"DeleteTargetAccountConfigurationRequest"}, + "output":{"shape":"DeleteTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "GetAction":{ "name":"GetAction", "http":{ @@ -71,6 +101,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetExperimentTargetAccountConfiguration":{ + "name":"GetExperimentTargetAccountConfiguration", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"GetExperimentTargetAccountConfigurationRequest"}, + "output":{"shape":"GetExperimentTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, "GetExperimentTemplate":{ "name":"GetExperimentTemplate", "http":{ @@ -85,6 +129,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetTargetAccountConfiguration":{ + "name":"GetTargetAccountConfiguration", + "http":{ + "method":"GET", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"GetTargetAccountConfigurationRequest"}, + "output":{"shape":"GetTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, "GetTargetResourceType":{ "name":"GetTargetResourceType", "http":{ @@ -112,6 +170,34 @@ {"shape":"ValidationException"} ] }, + "ListExperimentResolvedTargets":{ + "name":"ListExperimentResolvedTargets", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/resolvedTargets", + "responseCode":200 + }, + "input":{"shape":"ListExperimentResolvedTargetsRequest"}, + "output":{"shape":"ListExperimentResolvedTargetsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListExperimentTargetAccountConfigurations":{ + "name":"ListExperimentTargetAccountConfigurations", + "http":{ + "method":"GET", + "requestUri":"/experiments/{id}/targetAccountConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListExperimentTargetAccountConfigurationsRequest"}, + "output":{"shape":"ListExperimentTargetAccountConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListExperimentTemplates":{ "name":"ListExperimentTemplates", "http":{ @@ -148,6 +234,20 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"} }, + "ListTargetAccountConfigurations":{ + "name":"ListTargetAccountConfigurations", + "http":{ + "method":"GET", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations", + "responseCode":200 + }, + "input":{"shape":"ListTargetAccountConfigurationsRequest"}, + "output":{"shape":"ListTargetAccountConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListTargetResourceTypes":{ "name":"ListTargetResourceTypes", "http":{ @@ -225,9 +325,30 @@ {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"} ] + }, + "UpdateTargetAccountConfiguration":{ + "name":"UpdateTargetAccountConfiguration", + "http":{ + "method":"PATCH", + "requestUri":"/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + "responseCode":200 + }, + "input":{"shape":"UpdateTargetAccountConfigurationRequest"}, + "output":{"shape":"UpdateTargetAccountConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] } }, "shapes":{ + "AccountTargeting":{ + "type":"string", + "enum":[ + "single-account", + "multi-account" + ] + }, "Action":{ "type":"structure", "members":{ @@ -339,6 +460,13 @@ "key":{"shape":"ExperimentTemplateActionName"}, "value":{"shape":"CreateExperimentTemplateActionInput"} }, + "CreateExperimentTemplateExperimentOptionsInput":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "CreateExperimentTemplateLogConfigurationInput":{ "type":"structure", "required":["logSchemaVersion"], @@ -368,7 +496,8 @@ "actions":{"shape":"CreateExperimentTemplateActionInputMap"}, "roleArn":{"shape":"RoleArn"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"CreateExperimentTemplateLogConfigurationInput"} + "logConfiguration":{"shape":"CreateExperimentTemplateLogConfigurationInput"}, + "experimentOptions":{"shape":"CreateExperimentTemplateExperimentOptionsInput"} } }, "CreateExperimentTemplateResponse":{ @@ -409,6 +538,38 @@ "key":{"shape":"ExperimentTemplateTargetName"}, "value":{"shape":"CreateExperimentTemplateTargetInput"} }, + "CreateTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId", + "roleArn" + ], + "members":{ + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + }, + "roleArn":{"shape":"RoleArn"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "CreateTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "CreationTime":{"type":"timestamp"}, "DeleteExperimentTemplateRequest":{ "type":"structure", @@ -427,6 +588,38 @@ "experimentTemplate":{"shape":"ExperimentTemplate"} } }, + "DeleteTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "DeleteTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, + "EmptyTargetResolutionMode":{ + "type":"string", + "enum":[ + "fail", + "skip" + ] + }, "ExceptionMessage":{ "type":"string", "max":1024, @@ -446,7 +639,9 @@ "startTime":{"shape":"ExperimentStartTime"}, "endTime":{"shape":"ExperimentEndTime"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"ExperimentLogConfiguration"} + "logConfiguration":{"shape":"ExperimentLogConfiguration"}, + "experimentOptions":{"shape":"ExperimentOptions"}, + "targetAccountConfigurationsCount":{"shape":"TargetAccountConfigurationsCount"} } }, "ExperimentAction":{ @@ -520,7 +715,8 @@ "cancelled", "stopping", "stopped", - "failed" + "failed", + "skipped" ] }, "ExperimentActionStatusReason":{ @@ -558,6 +754,13 @@ "logSchemaVersion":{"shape":"LogSchemaVersion"} } }, + "ExperimentOptions":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "ExperimentS3LogConfiguration":{ "type":"structure", "members":{ @@ -626,6 +829,26 @@ "parameters":{"shape":"ExperimentTargetParameterMap"} } }, + "ExperimentTargetAccountConfiguration":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "ExperimentTargetAccountConfigurationList":{ + "type":"list", + "member":{"shape":"ExperimentTargetAccountConfigurationSummary"} + }, + "ExperimentTargetAccountConfigurationSummary":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, "ExperimentTargetFilter":{ "type":"structure", "members":{ @@ -693,7 +916,9 @@ "lastUpdateTime":{"shape":"LastUpdateTime"}, "roleArn":{"shape":"RoleArn"}, "tags":{"shape":"TagMap"}, - "logConfiguration":{"shape":"ExperimentTemplateLogConfiguration"} + "logConfiguration":{"shape":"ExperimentTemplateLogConfiguration"}, + "experimentOptions":{"shape":"ExperimentTemplateExperimentOptions"}, + "targetAccountConfigurationsCount":{"shape":"TargetAccountConfigurationsCount"} } }, "ExperimentTemplateAction":{ @@ -773,6 +998,13 @@ "max":512, "pattern":"[\\s\\S]+" }, + "ExperimentTemplateExperimentOptions":{ + "type":"structure", + "members":{ + "accountTargeting":{"shape":"AccountTargeting"}, + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "ExperimentTemplateId":{ "type":"string", "max":64, @@ -942,6 +1174,31 @@ "experiment":{"shape":"Experiment"} } }, + "GetExperimentTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentId", + "accountId" + ], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "GetExperimentTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"ExperimentTargetAccountConfiguration"} + } + }, "GetExperimentTemplateRequest":{ "type":"structure", "required":["id"], @@ -959,6 +1216,31 @@ "experimentTemplate":{"shape":"ExperimentTemplate"} } }, + "GetTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + } + } + }, + "GetTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "GetTargetResourceTypeRequest":{ "type":"structure", "required":["resourceType"], @@ -1005,6 +1287,68 @@ "nextToken":{"shape":"NextToken"} } }, + "ListExperimentResolvedTargetsMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListExperimentResolvedTargetsRequest":{ + "type":"structure", + "required":["experimentId"], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "maxResults":{ + "shape":"ListExperimentResolvedTargetsMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + }, + "targetName":{ + "shape":"TargetName", + "location":"querystring", + "locationName":"targetName" + } + } + }, + "ListExperimentResolvedTargetsResponse":{ + "type":"structure", + "members":{ + "resolvedTargets":{"shape":"ResolvedTargetList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListExperimentTargetAccountConfigurationsRequest":{ + "type":"structure", + "required":["experimentId"], + "members":{ + "experimentId":{ + "shape":"ExperimentId", + "location":"uri", + "locationName":"id" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListExperimentTargetAccountConfigurationsResponse":{ + "type":"structure", + "members":{ + "targetAccountConfigurations":{"shape":"ExperimentTargetAccountConfigurationList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListExperimentTemplatesMaxResults":{ "type":"integer", "max":100, @@ -1078,6 +1422,40 @@ "tags":{"shape":"TagMap"} } }, + "ListTargetAccountConfigurationsMaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListTargetAccountConfigurationsRequest":{ + "type":"structure", + "required":["experimentTemplateId"], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "maxResults":{ + "shape":"ListTargetAccountConfigurationsMaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListTargetAccountConfigurationsResponse":{ + "type":"structure", + "members":{ + "targetAccountConfigurations":{"shape":"TargetAccountConfigurationList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListTargetResourceTypesMaxResults":{ "type":"integer", "max":100, @@ -1113,6 +1491,18 @@ "min":1, "pattern":"[\\S]+" }, + "ResolvedTarget":{ + "type":"structure", + "members":{ + "resourceType":{"shape":"TargetResourceTypeId"}, + "targetName":{"shape":"TargetName"}, + "targetInformation":{"shape":"TargetInformationMap"} + } + }, + "ResolvedTargetList":{ + "type":"list", + "member":{"shape":"ResolvedTarget"} + }, "ResourceArn":{ "type":"string", "max":2048, @@ -1247,6 +1637,61 @@ "max":256, "pattern":"[\\s\\S]*" }, + "TargetAccountConfiguration":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "TargetAccountConfigurationDescription":{ + "type":"string", + "max":512, + "pattern":"[\\s\\S]*" + }, + "TargetAccountConfigurationList":{ + "type":"list", + "member":{"shape":"TargetAccountConfigurationSummary"} + }, + "TargetAccountConfigurationSummary":{ + "type":"structure", + "members":{ + "roleArn":{"shape":"RoleArn"}, + "accountId":{"shape":"TargetAccountId"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "TargetAccountConfigurationsCount":{ + "type":"long", + "min":0 + }, + "TargetAccountId":{ + "type":"string", + "max":48, + "min":12, + "pattern":"[\\S]+" + }, + "TargetInformationKey":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, + "TargetInformationMap":{ + "type":"map", + "key":{"shape":"TargetInformationKey"}, + "value":{"shape":"TargetInformationValue"} + }, + "TargetInformationValue":{ + "type":"string", + "max":2048, + "pattern":"[\\S]+" + }, + "TargetName":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, "TargetResourceType":{ "type":"structure", "members":{ @@ -1338,6 +1783,12 @@ "key":{"shape":"ExperimentTemplateActionName"}, "value":{"shape":"UpdateExperimentTemplateActionInputItem"} }, + "UpdateExperimentTemplateExperimentOptionsInput":{ + "type":"structure", + "members":{ + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + } + }, "UpdateExperimentTemplateLogConfigurationInput":{ "type":"structure", "members":{ @@ -1360,7 +1811,8 @@ "targets":{"shape":"UpdateExperimentTemplateTargetInputMap"}, "actions":{"shape":"UpdateExperimentTemplateActionInputMap"}, "roleArn":{"shape":"RoleArn"}, - "logConfiguration":{"shape":"UpdateExperimentTemplateLogConfigurationInput"} + "logConfiguration":{"shape":"UpdateExperimentTemplateLogConfigurationInput"}, + "experimentOptions":{"shape":"UpdateExperimentTemplateExperimentOptionsInput"} } }, "UpdateExperimentTemplateResponse":{ @@ -1401,6 +1853,33 @@ "key":{"shape":"ExperimentTemplateTargetName"}, "value":{"shape":"UpdateExperimentTemplateTargetInput"} }, + "UpdateTargetAccountConfigurationRequest":{ + "type":"structure", + "required":[ + "experimentTemplateId", + "accountId" + ], + "members":{ + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"uri", + "locationName":"id" + }, + "accountId":{ + "shape":"TargetAccountId", + "location":"uri", + "locationName":"accountId" + }, + "roleArn":{"shape":"RoleArn"}, + "description":{"shape":"TargetAccountConfigurationDescription"} + } + }, + "UpdateTargetAccountConfigurationResponse":{ + "type":"structure", + "members":{ + "targetAccountConfiguration":{"shape":"TargetAccountConfiguration"} + } + }, "ValidationException":{ "type":"structure", "members":{ diff --git a/models/apis/fis/2020-12-01/docs-2.json b/models/apis/fis/2020-12-01/docs-2.json index 5ff1b8527cb..aa0d10b7b54 100644 --- a/models/apis/fis/2020-12-01/docs-2.json +++ b/models/apis/fis/2020-12-01/docs-2.json @@ -2,24 +2,40 @@ "version": "2.0", "service": "

Fault Injection Simulator is a managed service that enables you to perform fault injection experiments on your Amazon Web Services workloads. For more information, see the Fault Injection Simulator User Guide.

", "operations": { - "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

For more information, see Experiment templates in the Fault Injection Simulator User Guide.

", + "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

For more information, see experiment templates in the Fault Injection Simulator User Guide.

", + "CreateTargetAccountConfiguration": "

Creates a target account configuration for the experiment template. A target account configuration is required when accountTargeting of experimentOptions is set to multi-account. For more information, see experiment options in the Fault Injection Simulator User Guide.

", "DeleteExperimentTemplate": "

Deletes the specified experiment template.

", + "DeleteTargetAccountConfiguration": "

Deletes the specified target account configuration of the experiment template.

", "GetAction": "

Gets information about the specified FIS action.

", "GetExperiment": "

Gets information about the specified experiment.

", + "GetExperimentTargetAccountConfiguration": "

Gets information about the specified target account configuration of the experiment.

", "GetExperimentTemplate": "

Gets information about the specified experiment template.

", + "GetTargetAccountConfiguration": "

Gets information about the specified target account configuration of the experiment template.

", "GetTargetResourceType": "

Gets information about the specified resource type.

", "ListActions": "

Lists the available FIS actions.

", + "ListExperimentResolvedTargets": "

Lists the resolved targets information of the specified experiment.

", + "ListExperimentTargetAccountConfigurations": "

Lists the target account configurations of the specified experiment.

", "ListExperimentTemplates": "

Lists your experiment templates.

", "ListExperiments": "

Lists your experiments.

", "ListTagsForResource": "

Lists the tags for the specified resource.

", + "ListTargetAccountConfigurations": "

Lists the target account configurations of the specified experiment template.

", "ListTargetResourceTypes": "

Lists the target resource types.

", "StartExperiment": "

Starts running an experiment from the specified experiment template.

", "StopExperiment": "

Stops the specified experiment.

", "TagResource": "

Applies the specified tags to the specified resource.

", "UntagResource": "

Removes the specified tags from the specified resource.

", - "UpdateExperimentTemplate": "

Updates the specified experiment template.

" + "UpdateExperimentTemplate": "

Updates the specified experiment template.

", + "UpdateTargetAccountConfiguration": "

Updates the target account configuration for the specified experiment template.

" }, "shapes": { + "AccountTargeting": { + "base": null, + "refs": { + "CreateExperimentTemplateExperimentOptionsInput$accountTargeting": "

Specifies the account targeting setting for experiment options.

", + "ExperimentOptions$accountTargeting": "

The account targeting setting for an experiment.

", + "ExperimentTemplateExperimentOptions$accountTargeting": "

The account targeting setting for an experiment template.

" + } + }, "Action": { "base": "

Describes an action. For more information, see FIS actions in the Fault Injection Simulator User Guide.

", "refs": { @@ -110,6 +126,7 @@ "base": null, "refs": { "CreateExperimentTemplateRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateTargetAccountConfigurationRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", "StartExperimentRequest$clientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

" } }, @@ -138,6 +155,12 @@ "CreateExperimentTemplateRequest$actions": "

The actions for the experiment.

" } }, + "CreateExperimentTemplateExperimentOptionsInput": { + "base": "

Specifies experiment options for an experiment template.

", + "refs": { + "CreateExperimentTemplateRequest$experimentOptions": "

The experiment options for the experiment template.

" + } + }, "CreateExperimentTemplateLogConfigurationInput": { "base": "

Specifies the configuration for experiment logging.

", "refs": { @@ -178,6 +201,16 @@ "CreateExperimentTemplateRequest$targets": "

The targets for the experiment.

" } }, + "CreateTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "CreateTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "CreationTime": { "base": null, "refs": { @@ -197,6 +230,25 @@ "refs": { } }, + "DeleteTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "DeleteTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, + "EmptyTargetResolutionMode": { + "base": null, + "refs": { + "CreateExperimentTemplateExperimentOptionsInput$emptyTargetResolutionMode": "

Specifies the empty target resolution mode for experiment options.

", + "ExperimentOptions$emptyTargetResolutionMode": "

The empty target resolution mode for an experiment.

", + "ExperimentTemplateExperimentOptions$emptyTargetResolutionMode": "

The empty target resolution mode for an experiment template.

", + "UpdateExperimentTemplateExperimentOptionsInput$emptyTargetResolutionMode": "

The empty target resolution mode of the experiment template.

" + } + }, "ExceptionMessage": { "base": null, "refs": { @@ -328,6 +380,9 @@ "Experiment$id": "

The ID of the experiment.

", "ExperimentSummary$id": "

The ID of the experiment.

", "GetExperimentRequest$id": "

The ID of the experiment.

", + "GetExperimentTargetAccountConfigurationRequest$experimentId": "

The ID of the experiment.

", + "ListExperimentResolvedTargetsRequest$experimentId": "

The ID of the experiment.

", + "ListExperimentTargetAccountConfigurationsRequest$experimentId": "

The ID of the experiment.

", "StopExperimentRequest$id": "

The ID of the experiment.

" } }, @@ -337,6 +392,12 @@ "Experiment$logConfiguration": "

The configuration for experiment logging.

" } }, + "ExperimentOptions": { + "base": "

Describes the options for an experiment.

", + "refs": { + "Experiment$experimentOptions": "

The experiment options for the experiment.

" + } + }, "ExperimentS3LogConfiguration": { "base": "

Describes the configuration for experiment logging to Amazon S3.

", "refs": { @@ -398,6 +459,24 @@ "ExperimentTargetMap$value": null } }, + "ExperimentTargetAccountConfiguration": { + "base": "

Describes a target account configuration for an experiment.

", + "refs": { + "GetExperimentTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

" + } + }, + "ExperimentTargetAccountConfigurationList": { + "base": null, + "refs": { + "ListExperimentTargetAccountConfigurationsResponse$targetAccountConfigurations": "

The target account configurations.

" + } + }, + "ExperimentTargetAccountConfigurationSummary": { + "base": "

Provides a summary of a target account configuration.

", + "refs": { + "ExperimentTargetAccountConfigurationList$member": null + } + }, "ExperimentTargetFilter": { "base": "

Describes a filter used for the target resources in an experiment.

", "refs": { @@ -572,17 +651,28 @@ "UpdateExperimentTemplateRequest$description": "

A description for the template.

" } }, + "ExperimentTemplateExperimentOptions": { + "base": "

Describes the experiment options for an experiment template.

", + "refs": { + "ExperimentTemplate$experimentOptions": "

The experiment options for an experiment template.

" + } + }, "ExperimentTemplateId": { "base": null, "refs": { + "CreateTargetAccountConfigurationRequest$experimentTemplateId": "

The experiment template ID.

", "DeleteExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "DeleteTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

", "Experiment$experimentTemplateId": "

The ID of the experiment template.

", "ExperimentSummary$experimentTemplateId": "

The ID of the experiment template.

", "ExperimentTemplate$id": "

The ID of the experiment template.

", "ExperimentTemplateSummary$id": "

The ID of the experiment template.

", "GetExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "GetTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

", + "ListTargetAccountConfigurationsRequest$experimentTemplateId": "

The ID of the experiment template.

", "StartExperimentRequest$experimentTemplateId": "

The ID of the experiment template.

", - "UpdateExperimentTemplateRequest$id": "

The ID of the experiment template.

" + "UpdateExperimentTemplateRequest$id": "

The ID of the experiment template.

", + "UpdateTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

" } }, "ExperimentTemplateLogConfiguration": { @@ -742,6 +832,16 @@ "refs": { } }, + "GetExperimentTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetExperimentTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetExperimentTemplateRequest": { "base": null, "refs": { @@ -752,6 +852,16 @@ "refs": { } }, + "GetTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "GetTargetResourceTypeRequest": { "base": null, "refs": { @@ -785,6 +895,32 @@ "refs": { } }, + "ListExperimentResolvedTargetsMaxResults": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsRequest$maxResults": "

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

" + } + }, + "ListExperimentResolvedTargetsRequest": { + "base": null, + "refs": { + } + }, + "ListExperimentResolvedTargetsResponse": { + "base": null, + "refs": { + } + }, + "ListExperimentTargetAccountConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListExperimentTargetAccountConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListExperimentTemplatesMaxResults": { "base": null, "refs": { @@ -827,6 +963,22 @@ "refs": { } }, + "ListTargetAccountConfigurationsMaxResults": { + "base": null, + "refs": { + "ListTargetAccountConfigurationsRequest$maxResults": "

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

" + } + }, + "ListTargetAccountConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListTargetAccountConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListTargetResourceTypesMaxResults": { "base": null, "refs": { @@ -857,14 +1009,32 @@ "refs": { "ListActionsRequest$nextToken": "

The token for the next page of results.

", "ListActionsResponse$nextToken": "

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

", + "ListExperimentResolvedTargetsRequest$nextToken": "

The token for the next page of results.

", + "ListExperimentResolvedTargetsResponse$nextToken": "

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

", + "ListExperimentTargetAccountConfigurationsRequest$nextToken": "

The token for the next page of results.

", + "ListExperimentTargetAccountConfigurationsResponse$nextToken": "

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

", "ListExperimentTemplatesRequest$nextToken": "

The token for the next page of results.

", "ListExperimentTemplatesResponse$nextToken": "

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

", "ListExperimentsRequest$nextToken": "

The token for the next page of results.

", "ListExperimentsResponse$nextToken": "

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

", + "ListTargetAccountConfigurationsRequest$nextToken": "

The token for the next page of results.

", + "ListTargetAccountConfigurationsResponse$nextToken": "

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

", "ListTargetResourceTypesRequest$nextToken": "

The token for the next page of results.

", "ListTargetResourceTypesResponse$nextToken": "

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

" } }, + "ResolvedTarget": { + "base": "

Describes a resolved target.

", + "refs": { + "ResolvedTargetList$member": null + } + }, + "ResolvedTargetList": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsResponse$resolvedTargets": "

The resolved targets.

" + } + }, "ResourceArn": { "base": null, "refs": { @@ -892,9 +1062,15 @@ "base": null, "refs": { "CreateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "CreateTargetAccountConfigurationRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", "Experiment$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "ExperimentTargetAccountConfiguration$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "ExperimentTargetAccountConfigurationSummary$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", "ExperimentTemplate$roleArn": "

The Amazon Resource Name (ARN) of an IAM role.

", - "UpdateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

" + "TargetAccountConfiguration$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "TargetAccountConfigurationSummary$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

", + "UpdateExperimentTemplateRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role that grants the FIS service permission to perform service actions on your behalf.

", + "UpdateTargetAccountConfigurationRequest$roleArn": "

The Amazon Resource Name (ARN) of an IAM role for the target account.

" } }, "S3BucketName": { @@ -1004,6 +1180,84 @@ "TagMap$value": null } }, + "TargetAccountConfiguration": { + "base": "

Describes a target account configuration.

", + "refs": { + "CreateTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "DeleteTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "GetTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

", + "UpdateTargetAccountConfigurationResponse$targetAccountConfiguration": "

Information about the target account configuration.

" + } + }, + "TargetAccountConfigurationDescription": { + "base": null, + "refs": { + "CreateTargetAccountConfigurationRequest$description": "

The description of the target account.

", + "ExperimentTargetAccountConfiguration$description": "

The description of the target account.

", + "ExperimentTargetAccountConfigurationSummary$description": "

The description of the target account.

", + "TargetAccountConfiguration$description": "

The description of the target account.

", + "TargetAccountConfigurationSummary$description": "

The description of the target account.

", + "UpdateTargetAccountConfigurationRequest$description": "

The description of the target account.

" + } + }, + "TargetAccountConfigurationList": { + "base": null, + "refs": { + "ListTargetAccountConfigurationsResponse$targetAccountConfigurations": "

The target account configurations.

" + } + }, + "TargetAccountConfigurationSummary": { + "base": "

Provides a summary of a target account configuration.

", + "refs": { + "TargetAccountConfigurationList$member": null + } + }, + "TargetAccountConfigurationsCount": { + "base": null, + "refs": { + "Experiment$targetAccountConfigurationsCount": "

The count of target account configurations for the experiment.

", + "ExperimentTemplate$targetAccountConfigurationsCount": "

The count of target account configurations for the experiment template.

" + } + }, + "TargetAccountId": { + "base": null, + "refs": { + "CreateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "DeleteTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "ExperimentTargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", + "ExperimentTargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", + "GetExperimentTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "GetTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", + "TargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", + "TargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", + "UpdateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

" + } + }, + "TargetInformationKey": { + "base": null, + "refs": { + "TargetInformationMap$key": null + } + }, + "TargetInformationMap": { + "base": null, + "refs": { + "ResolvedTarget$targetInformation": "

Information about the target.

" + } + }, + "TargetInformationValue": { + "base": null, + "refs": { + "TargetInformationMap$value": null + } + }, + "TargetName": { + "base": null, + "refs": { + "ListExperimentResolvedTargetsRequest$targetName": "

The name of the target.

", + "ResolvedTarget$targetName": "

The name of the target.

" + } + }, "TargetResourceType": { "base": "

Describes a resource type.

", "refs": { @@ -1025,6 +1279,7 @@ "ExperimentTarget$resourceType": "

The resource type.

", "ExperimentTemplateTarget$resourceType": "

The resource type.

", "GetTargetResourceTypeRequest$resourceType": "

The resource type.

", + "ResolvedTarget$resourceType": "

The resource type of the target.

", "TargetResourceType$resourceType": "

The resource type.

", "TargetResourceTypeSummary$resourceType": "

The resource type.

", "UpdateExperimentTemplateTargetInput$resourceType": "

The resource type. The resource type must be supported for the specified action.

" @@ -1094,6 +1349,12 @@ "UpdateExperimentTemplateRequest$actions": "

The actions for the experiment.

" } }, + "UpdateExperimentTemplateExperimentOptionsInput": { + "base": "

Specifies an experiment option for an experiment template.

", + "refs": { + "UpdateExperimentTemplateRequest$experimentOptions": "

The experiment options for the experiment template.

" + } + }, "UpdateExperimentTemplateLogConfigurationInput": { "base": "

Specifies the configuration for experiment logging.

", "refs": { @@ -1134,6 +1395,16 @@ "UpdateExperimentTemplateRequest$targets": "

The targets for the experiment.

" } }, + "UpdateTargetAccountConfigurationRequest": { + "base": null, + "refs": { + } + }, + "UpdateTargetAccountConfigurationResponse": { + "base": null, + "refs": { + } + }, "ValidationException": { "base": "

The specified input is not valid, or fails to satisfy the constraints for the request.

", "refs": { diff --git a/models/apis/fis/2020-12-01/endpoint-rule-set-1.json b/models/apis/fis/2020-12-01/endpoint-rule-set-1.json index 1c0e2487338..011fba0340a 100644 --- a/models/apis/fis/2020-12-01/endpoint-rule-set-1.json +++ b/models/apis/fis/2020-12-01/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,78 +32,29 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - } - ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", - "type": "error" - }, - { - "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "ref": "UseFIPS" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } + true ] } - ] + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" }, { "conditions": [ @@ -111,61 +62,109 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ { - "fn": "booleanEquals", + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", "argv": [ { - "ref": "UseDualStack" - }, - true - ] + "ref": "Region" + } + ], + "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsFIPS" - ] - } + "ref": "UseFIPS" + }, + true ] }, { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -176,61 +175,54 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" } - ] + ], + "type": "tree" }, - { - "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" - ] - } + "ref": "UseFIPS" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], "rules": [ { "conditions": [ { "fn": "stringEquals", "argv": [ - "aws-us-gov", { "fn": "getAttr", "argv": [ @@ -239,7 +231,8 @@ }, "name" ] - } + }, + "aws-us-gov" ] } ], @@ -259,54 +252,48 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" } - ] + ], + "type": "tree" }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "type": "tree", - "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { - "fn": "getAttr", - "argv": [ - { - "ref": "PartitionResult" - }, - "supportsDualStack" - ] - } + "ref": "UseDualStack" + }, + true ] } ], - "type": "tree", "rules": [ { - "conditions": [], - "type": "tree", + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], "rules": [ { "conditions": [], @@ -317,21 +304,17 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" } - ] + ], + "type": "tree" }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" - } - ] - }, - { - "conditions": [], - "type": "tree", - "rules": [ { "conditions": [], "endpoint": { @@ -341,9 +324,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" } ] } \ No newline at end of file diff --git a/models/apis/fis/2020-12-01/endpoint-tests-1.json b/models/apis/fis/2020-12-01/endpoint-tests-1.json index 389afc12fd8..e9beaeca747 100644 --- a/models/apis/fis/2020-12-01/endpoint-tests-1.json +++ b/models/apis/fis/2020-12-01/endpoint-tests-1.json @@ -1,133 +1,159 @@ { "testCases": [ { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://fis-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": true, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-iso-east-1.c2s.ic.gov" + "url": "https://fis-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://fis.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", "UseFIPS": false, - "Region": "us-iso-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-east-1.api.aws" + "url": "https://fis.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": true, + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://fis-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.us-east-1.amazonaws.com" + "url": "https://fis-fips.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": true, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://fis.us-east-1.api.aws" + "url": "https://fis.cn-north-1.api.amazonwebservices.com.cn" } }, "params": { - "UseDualStack": true, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-east-1.amazonaws.com" + "url": "https://fis.cn-north-1.amazonaws.com.cn" } }, "params": { - "UseDualStack": false, + "Region": "cn-north-1", "UseFIPS": false, - "Region": "us-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-west-1.amazonaws.com" + "url": "https://fis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-west-1.amazonaws.com" + "url": "https://fis.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-west-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-east-1.amazonaws.com" + "url": "https://fis.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-west-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-gov-east-1.amazonaws.com" + "url": "https://fis.us-gov-west-1.amazonaws.com" } }, "params": { - "UseDualStack": false, + "Region": "us-gov-west-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": false } }, { @@ -138,9 +164,9 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": true, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { @@ -151,100 +177,131 @@ } }, "params": { - "UseDualStack": true, + "Region": "us-gov-east-1", "UseFIPS": false, - "Region": "us-gov-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://fis-fips.us-isob-east-1.sc2s.sgov.gov" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": false, + "Region": "us-iso-east-1", "UseFIPS": true, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { - "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis.us-isob-east-1.sc2s.sgov.gov" + "url": "https://fis-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, + "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, - "Region": "us-isob-east-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://fis.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": true, + "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, - "Region": "cn-north-1" + "UseDualStack": true } }, { - "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://fis-fips.cn-north-1.amazonaws.com.cn" + "url": "https://fis-fips.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": false, + "Region": "us-isob-east-1", "UseFIPS": true, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "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://fis.cn-north-1.api.amazonwebservices.com.cn" + "url": "https://fis.us-isob-east-1.sc2s.sgov.gov" } }, "params": { - "UseDualStack": true, + "Region": "us-isob-east-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false } }, { - "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { - "url": "https://fis.cn-north-1.amazonaws.com.cn" + "url": "https://example.com" } }, "params": { - "UseDualStack": false, + "Region": "us-east-1", "UseFIPS": false, - "Region": "cn-north-1" + "UseDualStack": false, + "Endpoint": "https://example.com" } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "UseFIPS": false, - "Region": "us-east-1", + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -254,9 +311,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, - "UseFIPS": true, "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -266,11 +323,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, - "UseFIPS": false, "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/fis/2020-12-01/paginators-1.json b/models/apis/fis/2020-12-01/paginators-1.json index 905d0ae99bd..da6b3b2f180 100644 --- a/models/apis/fis/2020-12-01/paginators-1.json +++ b/models/apis/fis/2020-12-01/paginators-1.json @@ -5,6 +5,11 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListExperimentResolvedTargets": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListExperimentTemplates": { "input_token": "nextToken", "output_token": "nextToken", @@ -15,6 +20,11 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListTargetAccountConfigurations": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListTargetResourceTypes": { "input_token": "nextToken", "output_token": "nextToken", diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index 65ab43d5221..b49d45e6a39 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -3355,7 +3355,10 @@ }, "AdditionalOptionKeys":{ "type":"string", - "enum":["performanceTuning.caching"] + "enum":[ + "performanceTuning.caching", + "observations.scope" + ] }, "AdditionalOptions":{ "type":"map", diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index f0ae4e8eff9..961d2602d56 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -2964,8 +2964,8 @@ "CatalogKinesisSource$Database": "

The name of the database to read from.

", "CatalogSource$Database": "

The name of the database to read from.

", "CatalogSource$Table": "

The name of the table in the database to read from.

", - "ConnectorDataSource$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

", - "ConnectorDataTarget$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

", + "ConnectorDataSource$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

", + "ConnectorDataTarget$ConnectionType": "

The connectionType, as provided to the underlying Glue library. This node type supports the following connection types:

", "CustomCode$ClassName": "

The name defined for the custom code node class.

", "DQDLAliases$value": null, "DQResultsPublishingOptions$ResultsS3Prefix": "

The Amazon S3 prefix prepended to the results.

", diff --git a/models/apis/rds/2014-10-31/docs-2.json b/models/apis/rds/2014-10-31/docs-2.json index c70bff883de..85ee272d40d 100644 --- a/models/apis/rds/2014-10-31/docs-2.json +++ b/models/apis/rds/2014-10-31/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "Amazon Relational Database Service

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizeable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities mean that the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your DB instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

This interface reference for Amazon RDS contains documentation for a programming or command line interface you can use to manage Amazon RDS. Amazon RDS is asynchronous, which means that some interfaces might require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. The reference structure is as follows, and we list following some related topics from the user guide.

Amazon RDS API Reference

Amazon RDS User Guide

", + "service": "Amazon Relational Database Service

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. It provides cost-efficient, resizeable capacity for an industry-standard relational database and manages common database administration tasks, freeing up developers to focus on what makes their applications and businesses unique.

Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle, Db2, or Amazon Aurora database server. These capabilities mean that the code, applications, and tools you already use today with your existing databases work with Amazon RDS without modification. Amazon RDS automatically backs up your database and maintains the database software that powers your DB instance. Amazon RDS is flexible: you can scale your DB instance's compute resources and storage capacity to meet your application's demand. As with all Amazon Web Services, there are no up-front investments, and you pay only for the resources you use.

This interface reference for Amazon RDS contains documentation for a programming or command line interface you can use to manage Amazon RDS. Amazon RDS is asynchronous, which means that some interfaces might require techniques such as polling or callback functions to determine when a command has been applied. In this reference, the parameter descriptions indicate whether a command is applied immediately, on the next instance reboot, or during the maintenance window. The reference structure is as follows, and we list following some related topics from the user guide.

Amazon RDS API Reference

Amazon RDS User Guide

", "operations": { "AddRoleToDBCluster": "

Associates an Identity and Access Management (IAM) role with a DB cluster.

", "AddRoleToDBInstance": "

Associates an Amazon Web Services Identity and Access Management (IAM) role with a DB instance.

To add a role to a DB instance, the status of the DB instance must be available.

This command doesn't apply to RDS Custom.

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

Creates a new DB cluster parameter group.

Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.

A DB cluster parameter group is initially created with the default parameters for the database engine used by instances in the DB cluster. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBClusterParameterGroup. Once you've created a DB cluster parameter group, you need to associate it with your DB cluster using ModifyDBCluster.

When you associate a new DB cluster parameter group with a running Aurora DB cluster, reboot the DB instances in the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

When you associate a new DB cluster parameter group with a running Multi-AZ DB cluster, reboot the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the DB cluster parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "CreateDBClusterSnapshot": "

Creates a snapshot of a DB cluster.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "CreateDBInstance": "

Creates a new DB instance.

The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster. For an Aurora DB cluster, you can call this operation multiple times to add more than one DB instance to the cluster.

For more information about creating an RDS DB instance, see Creating an Amazon RDS DB instance in the Amazon RDS User Guide.

For more information about creating a DB instance in an Aurora DB cluster, see Creating an Amazon Aurora DB cluster in the Amazon Aurora User Guide.

", - "CreateDBInstanceReadReplica": "

Creates a new DB instance that acts as a read replica for an existing source DB instance or Multi-AZ DB cluster. You can create a read replica for a DB instance running MySQL, MariaDB, Oracle, PostgreSQL, or SQL Server. You can create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. For more information, see Working with read replicas and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica in the Amazon RDS User Guide.

Amazon Aurora doesn't support this operation. To create a DB instance for an Aurora DB cluster, use the CreateDBInstance operation.

All read replica DB instances are created with backups disabled. All other attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance or cluster, except as specified.

Your source DB instance or cluster must have backup retention enabled.

", + "CreateDBInstanceReadReplica": "

Creates a new DB instance that acts as a read replica for an existing source DB instance or Multi-AZ DB cluster. You can create a read replica for a DB instance running Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server. You can create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. For more information, see Working with read replicas and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica in the Amazon RDS User Guide.

Amazon Aurora doesn't support this operation. To create a DB instance for an Aurora DB cluster, use the CreateDBInstance operation.

All read replica DB instances are created with backups disabled. All other attributes (including DB security groups and DB parameter groups) are inherited from the source DB instance or cluster, except as specified.

Your source DB instance or cluster must have backup retention enabled.

", "CreateDBParameterGroup": "

Creates a new DB parameter group.

A DB parameter group is initially created with the default parameters for the database engine used by the DB instance. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBParameterGroup. Once you've created a DB parameter group, you need to associate it with your DB instance using ModifyDBInstance. When you associate a new DB parameter group with a running DB instance, you need to reboot the DB instance without failover for the new DB parameter group and associated settings to take effect.

This command doesn't apply to RDS Custom.

After you create a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", "CreateDBProxy": "

Creates a new DB proxy.

", "CreateDBProxyEndpoint": "

Creates a DBProxyEndpoint. Only applies to proxies that are associated with Aurora DB clusters. You can use DB proxy endpoints to specify read/write or read-only access to the DB cluster. You can also use DB proxy endpoints to access a DB proxy through a different VPC than the proxy's default VPC.

", @@ -89,9 +89,9 @@ "DescribeExportTasks": "

Returns information about a snapshot or cluster export to Amazon S3. This API operation supports pagination.

", "DescribeGlobalClusters": "

Returns information about Aurora global database clusters. This API supports pagination.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", "DescribeIntegrations": "

Describe one or more zero-ETL integrations with Amazon Redshift.

", - "DescribeOptionGroupOptions": "

Describes all available options.

", + "DescribeOptionGroupOptions": "

Describes all available options for the specified engine.

", "DescribeOptionGroups": "

Describes the available option groups.

", - "DescribeOrderableDBInstanceOptions": "

Returns a list of orderable DB instance options for the specified DB engine, DB engine version, and DB instance class.

", + "DescribeOrderableDBInstanceOptions": "

Describes the orderable DB instance options for a specified DB engine.

", "DescribePendingMaintenanceActions": "

Returns a list of resources (for example, DB instances) that have at least one pending maintenance action.

", "DescribeReservedDBInstances": "

Returns information about reserved DB instances for this account, or about a specified reserved DB instance.

", "DescribeReservedDBInstancesOfferings": "

Lists available reserved DB instance offerings.

", @@ -104,18 +104,18 @@ "ListTagsForResource": "

Lists all tags on an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "ModifyActivityStream": "

Changes the audit policy state of a database activity stream to either locked (default) or unlocked. A locked policy is read-only, whereas an unlocked policy is read/write. If your activity stream is started and locked, you can unlock it, customize your audit policy, and then lock your activity stream. Restarting the activity stream isn't required. For more information, see Modifying a database activity stream in the Amazon RDS User Guide.

This operation is supported for RDS for Oracle and Microsoft SQL Server.

", "ModifyCertificates": "

Override the system-default Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificate for Amazon RDS for new DB instances, or remove the override.

By using this operation, you can specify an RDS-approved SSL/TLS certificate for new DB instances that is different from the default certificate provided by RDS. You can also use this operation to remove the override, so that new DB instances use the default certificate provided by RDS.

You might need to override the default certificate in the following situations:

For more information about rotating your SSL/TLS certificate for RDS DB engines, see Rotating Your SSL/TLS Certificate in the Amazon RDS User Guide.

For more information about rotating your SSL/TLS certificate for Aurora DB engines, see Rotating Your SSL/TLS Certificate in the Amazon Aurora User Guide.

", - "ModifyCurrentDBClusterCapacity": "

Set the capacity of an Aurora Serverless v1 DB cluster to a specific value.

Aurora Serverless v1 scales seamlessly based on the workload on the DB cluster. In some cases, the capacity might not scale fast enough to meet a sudden change in workload, such as a large number of new transactions. Call ModifyCurrentDBClusterCapacity to set the capacity explicitly.

After this call sets the DB cluster capacity, Aurora Serverless v1 can automatically scale the DB cluster based on the cooldown period for scaling up and the cooldown period for scaling down.

For more information about Aurora Serverless v1, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.

If you call ModifyCurrentDBClusterCapacity with the default TimeoutAction, connections that prevent Aurora Serverless v1 from finding a scaling point might be dropped. For more information about scaling points, see Autoscaling for Aurora Serverless v1 in the Amazon Aurora User Guide.

This action only applies to Aurora Serverless v1 DB clusters.

", + "ModifyCurrentDBClusterCapacity": "

Set the capacity of an Aurora Serverless v1 DB cluster to a specific value.

Aurora Serverless v1 scales seamlessly based on the workload on the DB cluster. In some cases, the capacity might not scale fast enough to meet a sudden change in workload, such as a large number of new transactions. Call ModifyCurrentDBClusterCapacity to set the capacity explicitly.

After this call sets the DB cluster capacity, Aurora Serverless v1 can automatically scale the DB cluster based on the cooldown period for scaling up and the cooldown period for scaling down.

For more information about Aurora Serverless v1, see Using Amazon Aurora Serverless v1 in the Amazon Aurora User Guide.

If you call ModifyCurrentDBClusterCapacity with the default TimeoutAction, connections that prevent Aurora Serverless v1 from finding a scaling point might be dropped. For more information about scaling points, see Autoscaling for Aurora Serverless v1 in the Amazon Aurora User Guide.

This operation only applies to Aurora Serverless v1 DB clusters.

", "ModifyCustomDBEngineVersion": "

Modifies the status of a custom engine version (CEV). You can find CEVs to modify by calling DescribeDBEngineVersions.

The MediaImport service that imports files from Amazon S3 to create CEVs isn't integrated with Amazon Web Services CloudTrail. If you turn on data logging for Amazon RDS in CloudTrail, calls to the ModifyCustomDbEngineVersion event aren't logged. However, you might see calls from the API gateway that accesses your Amazon S3 bucket. These calls originate from the MediaImport service for the ModifyCustomDbEngineVersion event.

For more information, see Modifying CEV status in the Amazon RDS User Guide.

", "ModifyDBCluster": "

Modifies the settings of an Amazon Aurora DB cluster or a Multi-AZ DB cluster. You can change one or more settings by specifying these parameters and the new values in the request.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "ModifyDBClusterEndpoint": "

Modifies the properties of an endpoint in an Amazon Aurora DB cluster.

This action only applies to Aurora DB clusters.

", - "ModifyDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create action before the parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

If the modified DB cluster parameter group is used by an Aurora Serverless v1 cluster, Aurora applies the update immediately. The cluster restart might interrupt your workload. In that case, your application must reopen any connections and retry any transactions that were active when the parameter changes took effect.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "ModifyDBClusterEndpoint": "

Modifies the properties of an endpoint in an Amazon Aurora DB cluster.

This operation only applies to Aurora DB clusters.

", + "ModifyDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you create a DB cluster parameter group, you should wait at least 5 minutes before creating your first DB cluster that uses that DB cluster parameter group as the default parameter group. This allows Amazon RDS to fully complete the create operation before the parameter group is used as the default for a new DB cluster. This is especially important for parameters that are critical when creating the default database for a DB cluster, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBClusterParameters operation to verify that your DB cluster parameter group has been created or modified.

If the modified DB cluster parameter group is used by an Aurora Serverless v1 cluster, Aurora applies the update immediately. The cluster restart might interrupt your workload. In that case, your application must reopen any connections and retry any transactions that were active when the parameter changes took effect.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "ModifyDBClusterSnapshotAttribute": "

Adds an attribute and values to, or removes an attribute and values from, a manual DB cluster snapshot.

To share a manual DB cluster snapshot with other Amazon Web Services accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the Amazon Web Services accounts that are authorized to restore the manual DB cluster snapshot. Use the value all to make the manual DB cluster snapshot public, which means that it can be copied or restored by all Amazon Web Services accounts.

Don't add the all value for any manual DB cluster snapshots that contain private information that you don't want available to all Amazon Web Services accounts.

If a manual DB cluster snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ValuesToAdd parameter. You can't use all as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB cluster snapshot, or whether a manual DB cluster snapshot is public or private, use the DescribeDBClusterSnapshotAttributes API operation. The accounts are returned as values for the restore attribute.

", "ModifyDBInstance": "

Modifies settings for a DB instance. You can change one or more database configuration parameters by specifying these parameters and the new values in the request. To learn what modifications you can make to your DB instance, call DescribeValidDBInstanceModifications before you call ModifyDBInstance.

", - "ModifyDBParameterGroup": "

Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify action before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", + "ModifyDBParameterGroup": "

Modifies the parameters of a DB parameter group. To modify more than one parameter, submit a list of the following: ParameterName, ParameterValue, and ApplyMethod. A maximum of 20 parameters can be modified in a single request.

After you modify a DB parameter group, you should wait at least 5 minutes before creating your first DB instance that uses that DB parameter group as the default parameter group. This allows Amazon RDS to fully complete the modify operation before the parameter group is used as the default for a new DB instance. This is especially important for parameters that are critical when creating the default database for a DB instance, such as the character set for the default database defined by the character_set_database parameter. You can use the Parameter Groups option of the Amazon RDS console or the DescribeDBParameters command to verify that your DB parameter group has been created or modified.

", "ModifyDBProxy": "

Changes the settings for an existing DB proxy.

", "ModifyDBProxyEndpoint": "

Changes the settings for an existing DB proxy endpoint.

", "ModifyDBProxyTargetGroup": "

Modifies the properties of a DBProxyTargetGroup.

", - "ModifyDBSnapshot": "

Updates a manual DB snapshot with a new engine version. The snapshot can be encrypted or unencrypted, but not shared or public.

Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. This command doesn't apply to RDS Custom.

", + "ModifyDBSnapshot": "

Updates a manual DB snapshot with a new engine version. The snapshot can be encrypted or unencrypted, but not shared or public.

Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. This operation doesn't apply to RDS Custom or RDS for Db2.

", "ModifyDBSnapshotAttribute": "

Adds an attribute and values to, or removes an attribute and values from, a manual DB snapshot.

To share a manual DB snapshot with other Amazon Web Services accounts, specify restore as the AttributeName and use the ValuesToAdd parameter to add a list of IDs of the Amazon Web Services accounts that are authorized to restore the manual DB snapshot. Uses the value all to make the manual DB snapshot public, which means it can be copied or restored by all Amazon Web Services accounts.

Don't add the all value for any manual DB snapshots that contain private information that you don't want available to all Amazon Web Services accounts.

If the manual DB snapshot is encrypted, it can be shared, but only by specifying a list of authorized Amazon Web Services account IDs for the ValuesToAdd parameter. You can't use all as a value for that parameter in this case.

To view which Amazon Web Services accounts have access to copy or restore a manual DB snapshot, or whether a manual DB snapshot public or private, use the DescribeDBSnapshotAttributes API operation. The accounts are returned as values for the restore attribute.

", "ModifyDBSubnetGroup": "

Modifies an existing DB subnet group. DB subnet groups must contain at least one subnet in at least two AZs in the Amazon Web Services Region.

", "ModifyEventSubscription": "

Modifies an existing RDS event notification subscription. You can't modify the source identifiers using this call. To change source identifiers for a subscription, use the AddSourceIdentifierToSubscription and RemoveSourceIdentifierFromSubscription calls.

You can see a list of the event categories for a given source type (SourceType) in Events in the Amazon RDS User Guide or by using the DescribeEventCategories operation.

", @@ -128,27 +128,27 @@ "RebootDBCluster": "

You might need to reboot your DB cluster, usually for maintenance reasons. For example, if you make certain modifications, or if you change the DB cluster parameter group associated with the DB cluster, reboot the DB cluster for the changes to take effect.

Rebooting a DB cluster restarts the database engine service. Rebooting a DB cluster results in a momentary outage, during which the DB cluster status is set to rebooting.

Use this operation only for a non-Aurora Multi-AZ DB cluster.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "RebootDBInstance": "

You might need to reboot your DB instance, usually for maintenance reasons. For example, if you make certain modifications, or if you change the DB parameter group associated with the DB instance, you must reboot the instance for the changes to take effect.

Rebooting a DB instance restarts the database engine service. Rebooting a DB instance results in a momentary outage, during which the DB instance status is set to rebooting.

For more information about rebooting, see Rebooting a DB Instance in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom.

If your DB instance is part of a Multi-AZ DB cluster, you can reboot the DB cluster with the RebootDBCluster operation.

", "RegisterDBProxyTargets": "

Associate one or more DBProxyTarget data structures with a DBProxyTargetGroup.

", - "RemoveFromGlobalCluster": "

Detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster becomes a standalone cluster with read-write capability instead of being read-only and receiving data from a primary cluster in a different Region.

This action only applies to Aurora DB clusters.

", + "RemoveFromGlobalCluster": "

Detaches an Aurora secondary cluster from an Aurora global database cluster. The cluster becomes a standalone cluster with read-write capability instead of being read-only and receiving data from a primary cluster in a different Region.

This operation only applies to Aurora DB clusters.

", "RemoveRoleFromDBCluster": "

Removes the asssociation of an Amazon Web Services Identity and Access Management (IAM) role from a DB cluster.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "RemoveRoleFromDBInstance": "

Disassociates an Amazon Web Services Identity and Access Management (IAM) role from a DB instance.

", "RemoveSourceIdentifierFromSubscription": "

Removes a source identifier from an existing RDS event notification subscription.

", "RemoveTagsFromResource": "

Removes metadata tags from an Amazon RDS resource.

For an overview on tagging an Amazon RDS resource, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.

", "ResetDBClusterParameterGroup": "

Modifies the parameters of a DB cluster parameter group to the default value. To reset specific parameters submit a list of the following: ParameterName and ApplyMethod. To reset the entire DB cluster parameter group, specify the DBClusterParameterGroupName and ResetAllParameters parameters.

When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request. You must call RebootDBInstance for every DB instance in your DB cluster that you want the updated static parameter to apply to.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", "ResetDBParameterGroup": "

Modifies the parameters of a DB parameter group to the engine/system default value. To reset specific parameters, provide a list of the following: ParameterName and ApplyMethod. To reset the entire DB parameter group, specify the DBParameterGroup name and ResetAllParameters parameters. When resetting the entire group, dynamic parameters are updated immediately and static parameters are set to pending-reboot to take effect on the next DB instance restart or RebootDBInstance request.

", - "RestoreDBClusterFromS3": "

Creates an Amazon Aurora DB cluster from MySQL data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket in the Amazon Aurora User Guide.

This action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromS3 action has completed and the DB cluster is available.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters. The source DB engine must be MySQL.

", - "RestoreDBClusterFromSnapshot": "

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

The target DB cluster is created from the source snapshot with a default configuration. If you don't specify a security group, the new DB cluster is associated with the default security group.

This action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromSnapshot action has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "RestoreDBClusterToPointInTime": "

Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before LatestRestorableTime for up to BackupRetentionPeriod days. The target DB cluster is created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB cluster is created with the default DB security group.

For Aurora, this action only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance action to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterToPointInTime action has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", - "RestoreDBInstanceFromDBSnapshot": "

Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with most of the source's original configuration, including the default security group and DB parameter group. By default, the new DB instance is created as a Single-AZ deployment, except when the instance is a SQL Server instance that has an option group associated with mirroring. In this case, the instance becomes a Multi-AZ deployment, not a Single-AZ deployment.

If you want to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot action. RDS doesn't allow two DB instances with the same name. After you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot action. The result is that you replace the original DB instance with the DB instance created from the snapshot.

If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterFromSnapshot.

", - "RestoreDBInstanceFromS3": "

Amazon Relational Database Service (Amazon RDS) supports importing MySQL databases by using backup files. You can create a backup of your on-premises database, store it on Amazon Simple Storage Service (Amazon S3), and then restore the backup file onto a new Amazon RDS DB instance running MySQL. For more information, see Importing Data into an Amazon RDS MySQL DB Instance in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTime": "

Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterToPointInTime.

", + "RestoreDBClusterFromS3": "

Creates an Amazon Aurora DB cluster from MySQL data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket in the Amazon Aurora User Guide.

This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromS3 operation has completed and the DB cluster is available.

For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters. The source DB engine must be MySQL.

", + "RestoreDBClusterFromSnapshot": "

Creates a new DB cluster from a DB snapshot or DB cluster snapshot.

The target DB cluster is created from the source snapshot with a default configuration. If you don't specify a security group, the new DB cluster is associated with the default security group.

This operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterFromSnapshot operation has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "RestoreDBClusterToPointInTime": "

Restores a DB cluster to an arbitrary point in time. Users can restore to any point in time before LatestRestorableTime for up to BackupRetentionPeriod days. The target DB cluster is created from the source DB cluster with the same configuration as the original DB cluster, except that the new DB cluster is created with the default DB security group.

For Aurora, this operation only restores the DB cluster, not the DB instances for that DB cluster. You must invoke the CreateDBInstance operation to create DB instances for the restored DB cluster, specifying the identifier of the restored DB cluster in DBClusterIdentifier. You can create DB instances only after the RestoreDBClusterToPointInTime operation has completed and the DB cluster is available.

For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

", + "RestoreDBInstanceFromDBSnapshot": "

Creates a new DB instance from a DB snapshot. The target database is created from the source database restore point with most of the source's original configuration, including the default security group and DB parameter group. By default, the new DB instance is created as a Single-AZ deployment, except when the instance is a SQL Server instance that has an option group associated with mirroring. In this case, the instance becomes a Multi-AZ deployment, not a Single-AZ deployment.

If you want to replace your original DB instance with the new, restored DB instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot operation. RDS doesn't allow two DB instances with the same name. After you have renamed your original DB instance with a different identifier, then you can pass the original name of the DB instance as the DBInstanceIdentifier in the call to the RestoreDBInstanceFromDBSnapshot operation. The result is that you replace the original DB instance with the DB instance created from the snapshot.

If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier must be the ARN of the shared DB snapshot.

This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterFromSnapshot.

", + "RestoreDBInstanceFromS3": "

Amazon Relational Database Service (Amazon RDS) supports importing MySQL databases by using backup files. You can create a backup of your on-premises database, store it on Amazon Simple Storage Service (Amazon S3), and then restore the backup file onto a new Amazon RDS DB instance running MySQL. For more information, see Importing Data into an Amazon RDS MySQL DB Instance in the Amazon RDS User Guide.

This operation doesn't apply to RDS Custom.

", + "RestoreDBInstanceToPointInTime": "

Restores a DB instance to an arbitrary point in time. You can restore to any point in time before the time identified by the LatestRestorableTime property. You can restore to a point up to the number of days specified by the BackupRetentionPeriod property.

The target database is created with most of the original configuration, but in a system-selected Availability Zone, with the default security group, the default subnet group, and the default DB parameter group. By default, the new DB instance is created as a single-AZ deployment except when the instance is a SQL Server instance that has an option group that is associated with mirroring; in this case, the instance becomes a mirrored deployment and not a single-AZ deployment.

This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, use RestoreDBClusterToPointInTime.

", "RevokeDBSecurityGroupIngress": "

Revokes ingress from a DBSecurityGroup for previously authorized IP ranges or EC2 or VPC security groups. Required parameters for this API are one of CIDRIP, EC2SecurityGroupId for VPC, or (EC2SecurityGroupOwnerId and either EC2SecurityGroupName or EC2SecurityGroupId).

EC2-Classic was retired on August 15, 2022. If you haven't migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see Migrate from EC2-Classic to a VPC in the Amazon EC2 User Guide, the blog EC2-Classic Networking is Retiring – Here’s How to Prepare, and Moving a DB instance not in a VPC into a VPC in the Amazon RDS User Guide.

", "StartActivityStream": "

Starts a database activity stream to monitor activity on the database. For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", - "StartDBCluster": "

Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web Services console, the stop-db-cluster CLI command, or the StopDBCluster action.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", - "StartDBInstance": "

Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services console, the stop-db-instance CLI command, or the StopDBInstance action.

For more information, see Starting an Amazon RDS DB instance That Was Previously Stopped in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora DB clusters, use StartDBCluster instead.

", + "StartDBCluster": "

Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web Services console, the stop-db-cluster CLI command, or the StopDBCluster operation.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters.

", + "StartDBInstance": "

Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services console, the stop-db-instance CLI command, or the StopDBInstance operation.

For more information, see Starting an Amazon RDS DB instance That Was Previously Stopped in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora DB clusters, use StartDBCluster instead.

", "StartDBInstanceAutomatedBackupsReplication": "

Enables replication of automated backups to a different Amazon Web Services Region.

This command doesn't apply to RDS Custom.

For more information, see Replicating Automated Backups to Another Amazon Web Services Region in the Amazon RDS User Guide.

", - "StartExportTask": "

Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided IAM role must have access to the S3 bucket.

You can't export snapshot data from RDS Custom DB instances.

You can't export cluster data from Multi-AZ DB clusters.

For more information on exporting DB snapshot data, see Exporting DB snapshot data to Amazon S3 in the Amazon RDS User Guide or Exporting DB cluster snapshot data to Amazon S3 in the Amazon Aurora User Guide.

For more information on exporting DB cluster data, see Exporting DB cluster data to Amazon S3 in the Amazon Aurora User Guide.

", - "StopActivityStream": "

Stops a database activity stream that was started using the Amazon Web Services console, the start-activity-stream CLI command, or the StartActivityStream action.

For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", - "StopDBCluster": "

Stops an Amazon Aurora DB cluster. When you stop a DB cluster, Aurora retains the DB cluster's metadata, including its endpoints and DB parameter groups. Aurora also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This action only applies to Aurora DB clusters.

", + "StartExportTask": "

Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided IAM role must have access to the S3 bucket.

You can't export snapshot data from Db2 or RDS Custom DB instances.

You can't export cluster data from Multi-AZ DB clusters.

For more information on exporting DB snapshot data, see Exporting DB snapshot data to Amazon S3 in the Amazon RDS User Guide or Exporting DB cluster snapshot data to Amazon S3 in the Amazon Aurora User Guide.

For more information on exporting DB cluster data, see Exporting DB cluster data to Amazon S3 in the Amazon Aurora User Guide.

", + "StopActivityStream": "

Stops a database activity stream that was started using the Amazon Web Services console, the start-activity-stream CLI command, or the StartActivityStream operation.

For more information, see Monitoring Amazon Aurora with Database Activity Streams in the Amazon Aurora User Guide or Monitoring Amazon RDS with Database Activity Streams in the Amazon RDS User Guide.

", + "StopDBCluster": "

Stops an Amazon Aurora DB cluster. When you stop a DB cluster, Aurora retains the DB cluster's metadata, including its endpoints and DB parameter groups. Aurora also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping and Starting an Aurora Cluster in the Amazon Aurora User Guide.

This operation only applies to Aurora DB clusters.

", "StopDBInstance": "

Stops an Amazon RDS DB instance. When you stop a DB instance, Amazon RDS retains the DB instance's metadata, including its endpoint, DB parameter group, and option group membership. Amazon RDS also retains the transaction logs so you can do a point-in-time restore if necessary.

For more information, see Stopping an Amazon RDS DB Instance Temporarily in the Amazon RDS User Guide.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL. For Aurora clusters, use StopDBCluster instead.

", "StopDBInstanceAutomatedBackupsReplication": "

Stops automated backup replication for a DB instance.

This command doesn't apply to RDS Custom, Aurora MySQL, and Aurora PostgreSQL.

For more information, see Replicating Automated Backups to Another Amazon Web Services Region in the Amazon RDS User Guide.

", "SwitchoverBlueGreenDeployment": "

Switches over a blue/green deployment.

Before you switch over, production traffic is routed to the databases in the blue environment. After you switch over, production traffic is routed to the databases in the green environment.

For more information, see Using Amazon RDS Blue/Green Deployments for database updates in the Amazon RDS User Guide and Using Amazon RDS Blue/Green Deployments for database updates in the Amazon Aurora User Guide.

", @@ -1538,7 +1538,7 @@ } }, "DBParameterGroupNameMessage": { - "base": "

Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup action.

", + "base": "

Contains the result of a successful invocation of the ModifyDBParameterGroup or ResetDBParameterGroup operation.

", "refs": { } }, @@ -2840,10 +2840,10 @@ "CreateDBClusterMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

For information about valid IOPS values, see Provisioned IOPS storage in the Amazon RDS User Guide.

This setting is required to create a Multi-AZ DB cluster.

Valid for Cluster Type: Multi-AZ DB clusters only

Constraints:

", "CreateDBClusterMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, also set MonitoringInterval to a value other than 0.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "CreateDBClusterMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values:

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS issues an error.

", - "CreateDBInstanceMessage$AllocatedStorage": "

The amount of storage in gibibytes (GiB) to allocate for the DB instance.

This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.

Amazon RDS Custom

Constraints to the amount of storage for each storage type are the following:

RDS for MariaDB

Constraints to the amount of storage for each storage type are the following:

RDS for MySQL

Constraints to the amount of storage for each storage type are the following:

RDS for Oracle

Constraints to the amount of storage for each storage type are the following:

RDS for PostgreSQL

Constraints to the amount of storage for each storage type are the following:

RDS for SQL Server

Constraints to the amount of storage for each storage type are the following:

", + "CreateDBInstanceMessage$AllocatedStorage": "

The amount of storage in gibibytes (GiB) to allocate for the DB instance.

This setting doesn't apply to Amazon Aurora DB instances. Aurora cluster volumes automatically grow as the amount of data in your database increases, though you are only charged for the space that you use in an Aurora cluster volume.

Amazon RDS Custom

Constraints to the amount of storage for each storage type are the following:

RDS for Db2

Constraints to the amount of storage for each storage type are the following:

RDS for MariaDB

Constraints to the amount of storage for each storage type are the following:

RDS for MySQL

Constraints to the amount of storage for each storage type are the following:

RDS for Oracle

Constraints to the amount of storage for each storage type are the following:

RDS for PostgreSQL

Constraints to the amount of storage for each storage type are the following:

RDS for SQL Server

Constraints to the amount of storage for each storage type are the following:

", "CreateDBInstanceMessage$BackupRetentionPeriod": "

The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster.

Default: 1

Constraints:

", - "CreateDBInstanceMessage$Port": "

The port number on which the database accepts connections.

This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster.

Valid Values: 1150-65535

Default:

Constraints:

", - "CreateDBInstanceMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. For information about valid IOPS values, see Amazon RDS DB instance storage in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

Constraints:

", + "CreateDBInstanceMessage$Port": "

The port number on which the database accepts connections.

This setting doesn't apply to Aurora DB instances. The port number is managed by the cluster.

Valid Values: 1150-65535

Default:

Constraints:

", + "CreateDBInstanceMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to initially allocate for the DB instance. For information about valid IOPS values, see Amazon RDS DB instance storage in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. Storage is managed by the DB cluster.

Constraints:

", "CreateDBInstanceMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collection of Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, then you must set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "CreateDBInstanceMessage$PromotionTier": "

The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

This setting doesn't apply to RDS Custom DB instances.

Default: 1

Valid Values: 0 - 15

", "CreateDBInstanceMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

This setting doesn't apply to RDS Custom DB instances.

Valid Values:

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

", @@ -2922,11 +2922,11 @@ "ModifyDBClusterMessage$Iops": "

The amount of Provisioned IOPS (input/output operations per second) to be initially allocated for each DB instance in the Multi-AZ DB cluster.

For information about valid IOPS values, see Amazon RDS Provisioned IOPS storage in the Amazon RDS User Guide.

Valid for Cluster Type: Multi-AZ DB clusters only

Constraints:

", "ModifyDBClusterMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. To turn off collecting Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, also set MonitoringInterval to a value other than 0.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", "ModifyDBClusterMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

Valid for Cluster Type: Multi-AZ DB clusters only

Valid Values:

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS issues an error.

", - "ModifyDBInstanceMessage$AllocatedStorage": "

The new amount of storage in gibibytes (GiB) to allocate for the DB instance.

For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, the value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

For the valid values for allocated storage for each engine, see CreateDBInstance.

", + "ModifyDBInstanceMessage$AllocatedStorage": "

The new amount of storage in gibibytes (GiB) to allocate for the DB instance.

For RDS for Db2, MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, the value supplied must be at least 10% greater than the current value. Values that are not at least 10% greater than the existing value are rounded up so that they are 10% greater than the current value.

For the valid values for allocated storage for each engine, see CreateDBInstance.

", "ModifyDBInstanceMessage$BackupRetentionPeriod": "

The number of days to retain automated backups. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.

Enabling and disabling backups can result in a brief I/O suspension that lasts from a few seconds to a few minutes, depending on the size and class of your DB instance.

These changes are applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you change the parameter from one non-zero value to another non-zero value, the change is asynchronously applied as soon as possible.

This setting doesn't apply to Amazon Aurora DB instances. The retention period for automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

Default: Uses existing setting

Constraints:

", "ModifyDBInstanceMessage$Iops": "

The new Provisioned IOPS (I/O operations per second) value for the RDS instance.

Changing this setting doesn't result in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request. If you are migrating from Provisioned IOPS to standard storage, set this value to 0. The DB instance will require a reboot for the change in storage type to take effect.

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

Constraints:

Default: Uses existing setting

", "ModifyDBInstanceMessage$MonitoringInterval": "

The interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB instance. To disable collection of Enhanced Monitoring metrics, specify 0.

If MonitoringRoleArn is specified, set MonitoringInterval to a value other than 0.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 0 | 1 | 5 | 10 | 15 | 30 | 60

Default: 0

", - "ModifyDBInstanceMessage$DBPortNumber": "

The port number on which the database accepts connections.

The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

If you change the DBPortNumber value, your database restarts regardless of the value of the ApplyImmediately parameter.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 1150-65535

Default:

Constraints:

", + "ModifyDBInstanceMessage$DBPortNumber": "

The port number on which the database accepts connections.

The value of the DBPortNumber parameter must not match any of the port values specified for options in the option group for the DB instance.

If you change the DBPortNumber value, your database restarts regardless of the value of the ApplyImmediately parameter.

This setting doesn't apply to RDS Custom DB instances.

Valid Values: 1150-65535

Default:

Constraints:

", "ModifyDBInstanceMessage$PromotionTier": "

The order of priority in which an Aurora Replica is promoted to the primary instance after a failure of the existing primary instance. For more information, see Fault Tolerance for an Aurora DB Cluster in the Amazon Aurora User Guide.

This setting doesn't apply to RDS Custom DB instances.

Default: 1

Valid Values: 0 - 15

", "ModifyDBInstanceMessage$PerformanceInsightsRetentionPeriod": "

The number of days to retain Performance Insights data.

This setting doesn't apply to RDS Custom DB instances.

Valid Values:

Default: 7 days

If you specify a retention period that isn't valid, such as 94, Amazon RDS returns an error.

", "ModifyDBInstanceMessage$MaxAllocatedStorage": "

The upper limit in gibibytes (GiB) to which Amazon RDS can automatically scale the storage of the DB instance.

For more information about this setting, including limitations that apply to it, see Managing capacity automatically with Amazon RDS storage autoscaling in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", @@ -3228,7 +3228,7 @@ "CloudwatchLogsExportConfiguration$EnableLogTypes": "

The list of log types to enable.

", "CloudwatchLogsExportConfiguration$DisableLogTypes": "

The list of log types to disable.

", "CreateDBClusterMessage$EnableCloudwatchLogsExports": "

The list of log types that need to be enabled for exporting to CloudWatch Logs.

Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters

The following values are valid for each DB engine:

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

", - "CreateDBInstanceMessage$EnableCloudwatchLogsExports": "

The list of log types that need to be enabled for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

The following values are valid for each DB engine:

", + "CreateDBInstanceMessage$EnableCloudwatchLogsExports": "

The list of log types to enable for exporting to CloudWatch Logs. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

The following values are valid for each DB engine:

", "CreateDBInstanceReadReplicaMessage$EnableCloudwatchLogsExports": "

The list of logs that the new DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", "DBCluster$EnabledCloudwatchLogsExports": "

A list of log types that this DB cluster is configured to export to CloudWatch Logs.

Log types vary by DB engine. For information about the log types for each DB engine, see Amazon RDS Database Log Files in the Amazon Aurora User Guide.

", "DBEngineVersion$ExportableLogTypes": "

The types of logs that the database engine has available for export to CloudWatch Logs.

", @@ -3238,7 +3238,7 @@ "RestoreDBClusterFromS3Message$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

", "RestoreDBClusterFromSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. The values in the list depend on the DB engine being used.

RDS for MySQL

Possible values are error, general, and slowquery.

RDS for PostgreSQL

Possible values are postgresql and upgrade.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

Aurora PostgreSQL

Possible value is postgresql.

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB cluster is to export to CloudWatch Logs. The values in the list depend on the DB engine being used.

RDS for MySQL

Possible values are error, general, and slowquery.

RDS for PostgreSQL

Possible values are postgresql and upgrade.

Aurora MySQL

Possible values are audit, error, general, and slowquery.

Aurora PostgreSQL

Possible value is postgresql.

For more information about exporting CloudWatch Logs for Amazon RDS, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

For more information about exporting CloudWatch Logs for Amazon Aurora, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", - "RestoreDBInstanceFromDBSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$EnableCloudwatchLogsExports": "

The list of logs for the restored DB instance to export to CloudWatch Logs. The values in the list depend on the DB engine. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromS3Message$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

", "RestoreDBInstanceToPointInTimeMessage$EnableCloudwatchLogsExports": "

The list of logs that the restored DB instance is to export to CloudWatch Logs. The values in the list depend on the DB engine being used. For more information, see Publishing Database Logs to Amazon CloudWatch Logs in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

" } @@ -4374,19 +4374,19 @@ "CreateDBClusterParameterGroupMessage$Description": "

The description for the DB cluster parameter group.

", "CreateDBClusterSnapshotMessage$DBClusterSnapshotIdentifier": "

The identifier of the DB cluster snapshot. This parameter is stored as a lowercase string.

Constraints:

Example: my-cluster1-snapshot1

", "CreateDBClusterSnapshotMessage$DBClusterIdentifier": "

The identifier of the DB cluster to create a snapshot for. This parameter isn't case-sensitive.

Constraints:

Example: my-cluster1

", - "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

SQL Server

Not applicable. Must be null.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

", + "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

RDS for Db2

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

RDS for PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

RDS for SQL Server

Not applicable. Must be null.

", "CreateDBInstanceMessage$DBInstanceIdentifier": "

The identifier for this DB instance. This parameter is stored as a lowercase string.

Constraints:

Example: mydbinstance

", "CreateDBInstanceMessage$DBInstanceClass": "

The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB instance classes in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide.

", - "CreateDBInstanceMessage$Engine": "

The database engine to use for this DB instance.

Not every database engine is available in every Amazon Web Services Region.

Valid Values:

", + "CreateDBInstanceMessage$Engine": "

The database engine to use for this DB instance.

Not every database engine is available in every Amazon Web Services Region.

Valid Values:

", "CreateDBInstanceMessage$MasterUsername": "

The name for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The name for the master user is managed by the DB cluster.

This setting is required for RDS DB instances.

Constraints:

", - "CreateDBInstanceMessage$MasterUserPassword": "

The password for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the DB cluster.

Constraints:

Length Constraints:

", + "CreateDBInstanceMessage$MasterUserPassword": "

The password for the master user.

This setting doesn't apply to Amazon Aurora DB instances. The password for the master user is managed by the DB cluster.

Constraints:

Length Constraints:

", "CreateDBInstanceMessage$AvailabilityZone": "

The Availability Zone (AZ) where the database will be created. For information on Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones.

For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you don't specify one.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Constraints:

Example: us-east-1d

", "CreateDBInstanceMessage$DBSubnetGroupName": "

A DB subnet group to associate with this DB instance.

Constraints:

Example: mydbsubnetgroup

", "CreateDBInstanceMessage$PreferredMaintenanceWindow": "

The time range each week during which system maintenance can occur. For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Constraints:

", "CreateDBInstanceMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance. If you don't specify a value, then Amazon RDS uses the default DB parameter group for the specified DB engine and version.

This setting doesn't apply to RDS Custom DB instances.

Constraints:

", "CreateDBInstanceMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, using the BackupRetentionPeriod parameter. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster.

Constraints:

", - "CreateDBInstanceMessage$EngineVersion": "

The version number of the database engine to use.

This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB instance uses is managed by the DB cluster.

For a list of valid engine versions, use the DescribeDBEngineVersions operation.

The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region.

Amazon RDS Custom for Oracle

A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide.

Amazon RDS Custom for SQL Server

See RDS Custom for SQL Server general requirements in the Amazon RDS User Guide.

RDS for MariaDB

For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Microsoft SQL Server

For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide.

RDS for MySQL

For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Oracle

For information, see Oracle Database Engine release notes in the Amazon RDS User Guide.

RDS for PostgreSQL

For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide.

", - "CreateDBInstanceMessage$LicenseModel": "

The license model information for this DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

", + "CreateDBInstanceMessage$EngineVersion": "

The version number of the database engine to use.

This setting doesn't apply to Amazon Aurora DB instances. The version number of the database engine the DB instance uses is managed by the DB cluster.

For a list of valid engine versions, use the DescribeDBEngineVersions operation.

The following are the database engines and links to information about the major and minor versions that are available with Amazon RDS. Not every database engine is available for every Amazon Web Services Region.

Amazon RDS Custom for Oracle

A custom engine version (CEV) that you have previously created. This setting is required for RDS Custom for Oracle. The CEV name has the following format: 19.customized_string. A valid CEV name is 19.my_cev1. For more information, see Creating an RDS Custom for Oracle DB instance in the Amazon RDS User Guide.

Amazon RDS Custom for SQL Server

See RDS Custom for SQL Server general requirements in the Amazon RDS User Guide.

RDS for Db2

For information, see Db2 on Amazon RDS versions in the Amazon RDS User Guide.

RDS for MariaDB

For information, see MariaDB on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Microsoft SQL Server

For information, see Microsoft SQL Server versions on Amazon RDS in the Amazon RDS User Guide.

RDS for MySQL

For information, see MySQL on Amazon RDS versions in the Amazon RDS User Guide.

RDS for Oracle

For information, see Oracle Database Engine release notes in the Amazon RDS User Guide.

RDS for PostgreSQL

For information, see Amazon RDS for PostgreSQL versions and extensions in the Amazon RDS User Guide.

", + "CreateDBInstanceMessage$LicenseModel": "

The license model information for this DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

", "CreateDBInstanceMessage$OptionGroupName": "

The option group to associate the DB instance with.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group. Also, that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", "CreateDBInstanceMessage$CharacterSetName": "

For supported engines, the character set (CharacterSet) to associate the DB instance with.

This setting doesn't apply to the following DB instances:

", "CreateDBInstanceMessage$NcharCharacterSetName": "

The name of the NCHAR character set for the Oracle DB instance.

This setting doesn't apply to RDS Custom DB instances.

", @@ -4395,7 +4395,7 @@ "CreateDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

", "CreateDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceMessage$KmsKeyId": "

The Amazon Web Services KMS key identifier for an encrypted DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

This setting doesn't apply to Amazon Aurora DB instances. The Amazon Web Services KMS key identifier is managed by the DB cluster. For more information, see CreateDBCluster.

If StorageEncrypted is enabled, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

For Amazon RDS Custom, a KMS key is required for DB instances. For most RDS engines, if you leave this parameter empty while enabling StorageEncrypted, the engine uses the default KMS key. However, RDS Custom doesn't use the default key when this parameter is empty. You must explicitly specify a key.

", - "CreateDBInstanceMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, only Microsoft SQL Server, MySQL, Oracle, and PostgreSQL DB instances can be created in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

", + "CreateDBInstanceMessage$Domain": "

The Active Directory directory ID to create the DB instance in. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to the following DB instances:

", "CreateDBInstanceMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

Example: mymanagedADtest.mymanagedAD.mydomain

", "CreateDBInstanceMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "CreateDBInstanceMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", @@ -4404,13 +4404,13 @@ "CreateDBInstanceMessage$Timezone": "

The time zone of the DB instance. The time zone parameter is currently supported only by Microsoft SQL Server.

", "CreateDBInstanceMessage$PerformanceInsightsKMSKeyId": "

The Amazon Web Services KMS key identifier for encryption of Performance Insights data.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.

If you don't specify a value for PerformanceInsightsKMSKeyId, then Amazon RDS uses your default KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

This setting doesn't apply to RDS Custom DB instances.

", "CreateDBInstanceMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance.

This setting is required for RDS Custom.

Constraints:

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

", - "CreateDBInstanceMessage$BackupTarget": "

The location for storing automated backups and manual snapshots.

Valie Values:

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", + "CreateDBInstanceMessage$BackupTarget": "

The location for storing automated backups and manual snapshots.

Valid Values:

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", "CreateDBInstanceMessage$NetworkType": "

The network type of the DB instance.

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Valid Values: IPV4 | DUAL

", "CreateDBInstanceMessage$MasterUserSecretKmsKeyId": "

The Amazon Web Services KMS key identifier to encrypt a secret that is automatically generated and managed in Amazon Web Services Secrets Manager.

This setting is valid only if the master user password is managed by RDS in Amazon Web Services Secrets Manager for the DB instance.

The Amazon Web Services KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. To use a KMS key in a different Amazon Web Services account, specify the key ARN or alias ARN.

If you don't specify MasterUserSecretKmsKeyId, then the aws/secretsmanager KMS key is used to encrypt the secret. If the secret is in a different Amazon Web Services account, then you can't use the aws/secretsmanager KMS key to encrypt the secret, and you must use a customer managed KMS key.

There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different default KMS key for each Amazon Web Services Region.

", "CreateDBInstanceMessage$CACertificateIdentifier": "

The CA certificate identifier to use for the DB instance's server certificate.

This setting doesn't apply to RDS Custom DB instances.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", "CreateDBInstanceMessage$DBSystemId": "

The Oracle system identifier (SID), which is the name of the Oracle database instance that manages your database files. In this context, the term \"Oracle database instance\" refers exclusively to the system global area (SGA) and Oracle background processes. If you don't specify a SID, the value defaults to RDSCDB. The Oracle SID is also the name of your CDB.

", "CreateDBInstanceReadReplicaMessage$DBInstanceIdentifier": "

The DB instance identifier of the read replica. This identifier is the unique key that identifies a DB instance. This parameter is stored as a lowercase string.

", - "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to 15 read replicas, with the exception of Oracle and SQL Server, which can have up to five.

Constraints:

", + "CreateDBInstanceReadReplicaMessage$SourceDBInstanceIdentifier": "

The identifier of the DB instance that will act as the source for the read replica. Each DB instance can have up to 15 read replicas, with the exception of Oracle and SQL Server, which can have up to five.

Constraints:

", "CreateDBInstanceReadReplicaMessage$DBInstanceClass": "

The compute and memory capacity of the read replica, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: Inherits the value from the source DB instance.

", "CreateDBInstanceReadReplicaMessage$AvailabilityZone": "

The Availability Zone (AZ) where the read replica will be created.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Example: us-east-1d

", "CreateDBInstanceReadReplicaMessage$OptionGroupName": "

The option group to associate the DB instance with. If not specified, RDS uses the option group associated with the source DB instance or cluster.

For SQL Server, you must use the option group associated with the source.

This setting doesn't apply to RDS Custom DB instances.

", @@ -4430,7 +4430,7 @@ "CreateDBInstanceReadReplicaMessage$NetworkType": "

The network type of the DB instance.

Valid Values:

The network type is determined by the DBSubnetGroup specified for read replica. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", "CreateDBInstanceReadReplicaMessage$SourceDBClusterIdentifier": "

The identifier of the Multi-AZ DB cluster that will act as the source for the read replica. Each DB cluster can have up to 15 read replicas.

Constraints:

", "CreateDBParameterGroupMessage$DBParameterGroupName": "

The name of the DB parameter group.

Constraints:

This value is stored as a lowercase string.

", - "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

To list all of the available parameter group families for a DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine <engine>

For example, to list all of the available parameter group families for the MySQL DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine mysql

The output contains duplicates.

The following are the valid DB engine values:

", + "CreateDBParameterGroupMessage$DBParameterGroupFamily": "

The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family.

To list all of the available parameter group families for a DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine <engine>

For example, to list all of the available parameter group families for the MySQL DB engine, use the following command:

aws rds describe-db-engine-versions --query \"DBEngineVersions[].DBParameterGroupFamily\" --engine mysql

The output contains duplicates.

The following are the valid DB engine values:

", "CreateDBParameterGroupMessage$Description": "

The description for the DB parameter group.

", "CreateDBProxyRequest$DBProxyName": "

The identifier for the proxy. This name must be unique for all proxies owned by your Amazon Web Services account in the specified Amazon Web Services Region. An identifier must begin with a letter and must contain only ASCII letters, digits, and hyphens; it can't end with a hyphen or contain two consecutive hyphens.

", "CreateDBProxyRequest$RoleArn": "

The Amazon Resource Name (ARN) of the IAM role that the proxy uses to access secrets in Amazon Web Services Secrets Manager.

", @@ -4450,7 +4450,7 @@ "CreateGlobalClusterMessage$DatabaseName": "

The name for your database of up to 64 alphanumeric characters. If you don't specify a name, Amazon Aurora doesn't create a database in the global database cluster.

Constraints:

", "CreateIntegrationMessage$KMSKeyId": "

The Amazon Web Services Key Management System (Amazon Web Services KMS) key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, RDS uses a default Amazon Web Services owned key.

", "CreateOptionGroupMessage$OptionGroupName": "

Specifies the name of the option group to be created.

Constraints:

Example: myoptiongroup

", - "CreateOptionGroupMessage$EngineName": "

Specifies the name of the engine that this option group should be associated with.

Valid Values:

", + "CreateOptionGroupMessage$EngineName": "

The name of the engine to associate this option group with.

Valid Values:

", "CreateOptionGroupMessage$MajorEngineVersion": "

Specifies the major version of the engine that this option group should be associated with.

", "CreateOptionGroupMessage$OptionGroupDescription": "

The description of the option group.

", "CreateTenantDatabaseMessage$DBInstanceIdentifier": "

The user-supplied DB instance identifier. RDS creates your tenant database in this DB instance. This parameter isn't case-sensitive.

", @@ -4762,7 +4762,7 @@ "DescribeDBClusterSnapshotsMessage$DbClusterResourceId": "

A specific DB cluster resource ID to describe.

", "DescribeDBClustersMessage$DBClusterIdentifier": "

The user-supplied DB cluster identifier or the Amazon Resource Name (ARN) of the DB cluster. If this parameter is specified, information for only the specific DB cluster is returned. This parameter isn't case-sensitive.

Constraints:

", "DescribeDBClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeDBClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeDBEngineVersionsMessage$Engine": "

The database engine to return version details for.

Valid Values:

", + "DescribeDBEngineVersionsMessage$Engine": "

The database engine to return version details for.

Valid Values:

", "DescribeDBEngineVersionsMessage$EngineVersion": "

A specific database engine version to return details for.

Example: 5.1.49

", "DescribeDBEngineVersionsMessage$DBParameterGroupFamily": "

The name of a specific DB parameter group family to return details for.

Constraints:

", "DescribeDBEngineVersionsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", @@ -4812,7 +4812,7 @@ "DescribeDBSubnetGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeDBSubnetGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeEngineDefaultClusterParametersMessage$DBParameterGroupFamily": "

The name of the DB cluster parameter group family to return engine parameter information for.

", "DescribeEngineDefaultClusterParametersMessage$Marker": "

An optional pagination token provided by a previous DescribeEngineDefaultClusterParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

The name of the DB parameter group family.

Valid Values:

", + "DescribeEngineDefaultParametersMessage$DBParameterGroupFamily": "

The name of the DB parameter group family.

Valid Values:

", "DescribeEngineDefaultParametersMessage$Marker": "

An optional pagination token provided by a previous DescribeEngineDefaultParameters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeEventCategoriesMessage$SourceType": "

The type of source that is generating the events. For RDS Proxy events, specify db-proxy.

Valid Values: db-instance | db-cluster | db-parameter-group | db-security-group | db-snapshot | db-cluster-snapshot | db-proxy

", "DescribeEventSubscriptionsMessage$SubscriptionName": "

The name of the RDS event notification subscription you want to describe.

", @@ -4824,18 +4824,18 @@ "DescribeExportTasksMessage$Marker": "

An optional pagination token provided by a previous DescribeExportTasks request. If you specify this parameter, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter.

", "DescribeGlobalClustersMessage$GlobalClusterIdentifier": "

The user-supplied DB cluster identifier. If this parameter is specified, information from only the specific DB cluster is returned. This parameter isn't case-sensitive.

Constraints:

", "DescribeGlobalClustersMessage$Marker": "

An optional pagination token provided by a previous DescribeGlobalClusters request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeOptionGroupOptionsMessage$EngineName": "

A required parameter. Options available for the given engine name are described.

Valid Values:

", + "DescribeOptionGroupOptionsMessage$EngineName": "

The name of the engine to describe options for.

Valid Values:

", "DescribeOptionGroupOptionsMessage$MajorEngineVersion": "

If specified, filters the results to include only options for the specified major engine version.

", "DescribeOptionGroupOptionsMessage$Marker": "

An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribeOptionGroupsMessage$OptionGroupName": "

The name of the option group to describe. Can't be supplied together with EngineName or MajorEngineVersion.

", "DescribeOptionGroupsMessage$Marker": "

An optional pagination token provided by a previous DescribeOptionGroups request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", - "DescribeOptionGroupsMessage$EngineName": "

Filters the list of option groups to only include groups associated with a specific database engine.

Valid Values:

", + "DescribeOptionGroupsMessage$EngineName": "

A filter to only include option groups associated with this database engine.

Valid Values:

", "DescribeOptionGroupsMessage$MajorEngineVersion": "

Filters the list of option groups to only include groups associated with a specific database engine version. If specified, then EngineName must also be specified.

", - "DescribeOrderableDBInstanceOptionsMessage$Engine": "

The name of the engine to retrieve DB instance options for.

Valid Values:

", - "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

The engine version filter value. Specify this parameter to show only the available offerings matching the specified engine version.

", - "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

The DB instance class filter value. Specify this parameter to show only the available offerings matching the specified DB instance class.

", - "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

The license model filter value. Specify this parameter to show only the available offerings matching the specified license model.

RDS Custom supports only the BYOL licensing model.

", - "DescribeOrderableDBInstanceOptionsMessage$AvailabilityZoneGroup": "

The Availability Zone group associated with a Local Zone. Specify this parameter to retrieve available offerings for the Local Zones in the group.

Omit this parameter to show the available offerings in the specified Amazon Web Services Region.

This setting doesn't apply to RDS Custom.

", + "DescribeOrderableDBInstanceOptionsMessage$Engine": "

The name of the engine to describe DB instance options for.

Valid Values:

", + "DescribeOrderableDBInstanceOptionsMessage$EngineVersion": "

A filter to include only the available options for the specified engine version.

", + "DescribeOrderableDBInstanceOptionsMessage$DBInstanceClass": "

A filter to include only the available options for the specified DB instance class.

", + "DescribeOrderableDBInstanceOptionsMessage$LicenseModel": "

A filter to include only the available options for the specified license model.

RDS Custom supports only the BYOL licensing model.

", + "DescribeOrderableDBInstanceOptionsMessage$AvailabilityZoneGroup": "

The Availability Zone group associated with a Local Zone. Specify this parameter to retrieve available options for the Local Zones in the group.

Omit this parameter to show the available options in the specified Amazon Web Services Region.

This setting doesn't apply to RDS Custom DB instances.

", "DescribeOrderableDBInstanceOptionsMessage$Marker": "

An optional pagination token provided by a previous DescribeOrderableDBInstanceOptions request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

", "DescribePendingMaintenanceActionsMessage$ResourceIdentifier": "

The ARN of a resource to return pending maintenance actions for.

", "DescribePendingMaintenanceActionsMessage$Marker": "

An optional pagination token provided by a previous DescribePendingMaintenanceActions request. If this parameter is specified, the response includes only records beyond the marker, up to a number of records specified by MaxRecords.

", @@ -4966,19 +4966,19 @@ "ModifyDBInstanceMessage$DBInstanceIdentifier": "

The identifier of DB instance to modify. This value is stored as a lowercase string.

Constraints:

", "ModifyDBInstanceMessage$DBInstanceClass": "

The new compute and memory capacity of the DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide. For RDS Custom, see DB instance class support for RDS Custom for Oracle and DB instance class support for RDS Custom for SQL Server.

If you modify the DB instance class, an outage occurs during the change. The change is applied during the next maintenance window, unless you specify ApplyImmediately in your request.

Default: Uses existing setting

Constraints:

", "ModifyDBInstanceMessage$DBSubnetGroupName": "

The new DB subnet group for the DB instance. You can use this parameter to move your DB instance to a different VPC. If your DB instance isn't in a VPC, you can also use this parameter to move your DB instance into a VPC. For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Changing the subnet group causes an outage during the change. The change is applied during the next maintenance window, unless you enable ApplyImmediately.

This parameter doesn't apply to RDS Custom DB instances.

Constraints:

Example: mydbsubnetgroup

", - "ModifyDBInstanceMessage$MasterUserPassword": "

The new password for the master user.

Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Amazon RDS API operations never return the password, so this action provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

This setting doesn't apply to the following DB instances:

Default: Uses existing setting

Constraints:

Length Constraints:

", + "ModifyDBInstanceMessage$MasterUserPassword": "

The new password for the master user.

Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. Between the time of the request and the completion of the request, the MasterUserPassword element exists in the PendingModifiedValues element of the operation response.

Amazon RDS API operations never return the password, so this operation provides a way to regain access to a primary instance user if the password is lost. This includes restoring privileges that might have been accidentally revoked.

This setting doesn't apply to the following DB instances:

Default: Uses existing setting

Constraints:

Length Constraints:

", "ModifyDBInstanceMessage$DBParameterGroupName": "

The name of the DB parameter group to apply to the DB instance.

Changing this setting doesn't result in an outage. The parameter group name itself is changed immediately, but the actual parameter changes are not applied until you reboot the instance without failover. In this case, the DB instance isn't rebooted automatically, and the parameter changes aren't applied during the next maintenance window. However, if you modify dynamic parameters in the newly associated DB parameter group, these changes are applied immediately without a reboot.

This setting doesn't apply to RDS Custom DB instances.

Default: Uses existing setting

Constraints:

", "ModifyDBInstanceMessage$PreferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod parameter. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region. For more information, see Backup window in the Amazon RDS User Guide.

This setting doesn't apply to Amazon Aurora DB instances. The daily time range for creating automated backups is managed by the DB cluster. For more information, see ModifyDBCluster.

Constraints:

", "ModifyDBInstanceMessage$PreferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, which might result in an outage. Changing this parameter doesn't result in an outage, except in the following situation, and the change is asynchronously applied as soon as possible. If there are pending actions that cause a reboot, and the maintenance window is changed to include the current time, then changing this parameter causes a reboot of the DB instance. If you change this window to the current time, there must be at least 30 minutes between the current time and end of the window to ensure pending changes are applied.

For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

Default: Uses existing setting

Constraints:

", "ModifyDBInstanceMessage$EngineVersion": "

The version number of the database engine to upgrade to. Changing this parameter results in an outage and the change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

For major version upgrades, if a nondefault DB parameter group is currently in use, a new DB parameter group in the DB parameter group family for the new engine version must be specified. The new DB parameter group can be the default for that DB parameter group family.

If you specify only a major version, Amazon RDS updates the DB instance to the default minor version if the current minor version is lower. For information about valid engine versions, see CreateDBInstance, or call DescribeDBEngineVersions.

If the instance that you're modifying is acting as a read replica, the engine version that you specify must be the same or higher than the version that the source DB instance or cluster is running.

In RDS Custom for Oracle, this parameter is supported for read replicas only if they are in the PATCH_DB_FAILURE lifecycle.

Constraints:

", - "ModifyDBInstanceMessage$LicenseModel": "

The license model for the DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

", + "ModifyDBInstanceMessage$LicenseModel": "

The license model for the DB instance.

This setting doesn't apply to Amazon Aurora or RDS Custom DB instances.

Valid Values:

", "ModifyDBInstanceMessage$OptionGroupName": "

The option group to associate the DB instance with.

Changing this parameter doesn't result in an outage, with one exception. If the parameter change results in an option group that enables OEM, it can cause a brief period, lasting less than a second, during which new connections are rejected but existing connections aren't interrupted.

The change is applied during the next maintenance window unless the ApplyImmediately parameter is enabled for this request.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$NewDBInstanceIdentifier": "

The new identifier for the DB instance when renaming a DB instance. When you change the DB instance identifier, an instance reboot occurs immediately if you enable ApplyImmediately, or will occur during the next maintenance window if you disable ApplyImmediately. This value is stored as a lowercase string.

This setting doesn't apply to RDS Custom DB instances.

Constraints:

Example: mydbinstance

", "ModifyDBInstanceMessage$StorageType": "

The storage type to associate with the DB instance.

If you specify Provisioned IOPS (io1), you must also include a value for the Iops parameter.

If you choose to migrate your DB instance from using standard storage to using Provisioned IOPS, or from using Provisioned IOPS to using standard storage, the process can take time. The duration of the migration depends on several factors such as database load, storage size, storage type (standard or Provisioned IOPS), amount of IOPS provisioned (if any), and the number of prior scale storage operations. Typical migration times are under 24 hours, but the process can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation. While the migration takes place, nightly backups for the instance are suspended. No other Amazon RDS operations can take place for the instance, including modifying the instance, rebooting the instance, deleting the instance, creating a read replica for the instance, and creating a DB snapshot of the instance.

Valid Values: gp2 | gp3 | io1 | standard

Default: io1, if the Iops parameter is specified. Otherwise, gp2.

", "ModifyDBInstanceMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$CACertificateIdentifier": "

The CA certificate identifier to use for the DB instance's server certificate.

This setting doesn't apply to RDS Custom DB instances.

For more information, see Using SSL/TLS to encrypt a connection to a DB instance in the Amazon RDS User Guide and Using SSL/TLS to encrypt a connection to a DB cluster in the Amazon Aurora User Guide.

", - "ModifyDBInstanceMessage$Domain": "

The Active Directory directory ID to move the DB instance to. Specify none to remove the instance from its current domain. You must create the domain before this operation. Currently, you can create only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", + "ModifyDBInstanceMessage$Domain": "

The Active Directory directory ID to move the DB instance to. Specify none to remove the instance from its current domain. You must create the domain before this operation. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom DB instances.

", "ModifyDBInstanceMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

Example: mymanagedADtest.mymanagedAD.mydomain

", "ModifyDBInstanceMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "ModifyDBInstanceMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", @@ -5179,24 +5179,24 @@ "RestoreDBClusterToPointInTimeMessage$StorageType": "

Specifies the storage type to be associated with the DB cluster.

When specified for a Multi-AZ DB cluster, a value for the Iops parameter is required.

Valid Values: aurora, aurora-iopt1 (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Default: aurora (Aurora DB clusters); io1 (Multi-AZ DB clusters)

Valid for: Aurora DB clusters and Multi-AZ DB clusters

", "RestoreDBClusterToPointInTimeMessage$NetworkType": "

The network type of the DB cluster.

Valid Values:

The network type is determined by the DBSubnetGroup specified for the DB cluster. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon Aurora User Guide.

Valid for: Aurora DB clusters only

", "RestoreDBClusterToPointInTimeMessage$SourceDbClusterResourceId": "

The resource ID of the source DB cluster from which to restore.

", - "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

Name of the DB instance to create from the DB snapshot. This parameter isn't case-sensitive.

Constraints:

Example: my-snapshot-id

", - "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to restore from.

Constraints:

", + "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceIdentifier": "

The name of the DB instance to create from the DB snapshot. This parameter isn't case-sensitive.

Constraints:

Example: my-snapshot-id

", + "RestoreDBInstanceFromDBSnapshotMessage$DBSnapshotIdentifier": "

The identifier for the DB snapshot to restore from.

Constraints:

", "RestoreDBInstanceFromDBSnapshotMessage$DBInstanceClass": "

The compute and memory capacity of the Amazon RDS DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Default: The same DBInstanceClass as the original DB instance.

", "RestoreDBInstanceFromDBSnapshotMessage$AvailabilityZone": "

The Availability Zone (AZ) where the DB instance will be created.

Default: A random, system-chosen Availability Zone.

Constraint: You can't specify the AvailabilityZone parameter if the DB instance is a Multi-AZ deployment.

Example: us-east-1a

", - "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new instance.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

", + "RestoreDBInstanceFromDBSnapshotMessage$DBSubnetGroupName": "

The name of the DB subnet group to use for the new instance.

Constraints:

Example: mydbsubnetgroup

", "RestoreDBInstanceFromDBSnapshotMessage$LicenseModel": "

License model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Default: Same as source.

Valid Values: license-included | bring-your-own-license | general-public-license

", - "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

The database name for the restored DB instance.

This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines. It also doesn't apply to RDS Custom DB instances.

", - "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Default: The same as source

Constraint: Must be compatible with the engine of the source. For example, you can restore a MariaDB 10.1 DB instance from a MySQL 5.6 snapshot.

Valid Values:

", + "RestoreDBInstanceFromDBSnapshotMessage$DBName": "

The name of the database for the restored DB instance.

This parameter only applies to RDS for Oracle and RDS for SQL Server DB instances. It doesn't apply to the other engines or to RDS Custom DB instances.

", + "RestoreDBInstanceFromDBSnapshotMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Default: The same as source

Constraint: Must be compatible with the engine of the source. For example, you can restore a MariaDB 10.1 DB instance from a MySQL 5.6 snapshot.

Valid Values:

", "RestoreDBInstanceFromDBSnapshotMessage$OptionGroupName": "

The name of the option group to be used for the restored DB instance.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$StorageType": "

Specifies the storage type to be associated with the DB instance.

Valid Values: gp2 | gp3 | io1 | standard

If you specify io1 or gp3, you must also include a value for the Iops parameter.

Default: io1 if the Iops parameter is specified, otherwise gp2

", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$TdeCredentialPassword": "

The password for the given ARN from the key store in order to access the device.

This setting doesn't apply to RDS Custom.

", - "RestoreDBInstanceFromDBSnapshotMessage$Domain": "

Specify the Active Directory directory ID to restore the DB instance in. The domain/ must be created prior to this operation. Currently, you can create only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", + "RestoreDBInstanceFromDBSnapshotMessage$Domain": "

The Active Directory directory ID to restore the DB instance in. The domain/ must be created prior to this operation. Currently, you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain.

For more information, see Kerberos Authentication in the Amazon RDS User Guide.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$DomainFqdn": "

The fully qualified domain name (FQDN) of an Active Directory domain.

Constraints:

Example: mymanagedADtest.mymanagedAD.mydomain

", "RestoreDBInstanceFromDBSnapshotMessage$DomainOu": "

The Active Directory organizational unit for your DB instance to join.

Constraints:

Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain

", "RestoreDBInstanceFromDBSnapshotMessage$DomainAuthSecretArn": "

The ARN for the Secrets Manager secret with the credentials for the user joining the domain.

Constraints:

Example: arn:aws:secretsmanager:region:account-number:secret:myselfmanagedADtestsecret-123456

", "RestoreDBInstanceFromDBSnapshotMessage$DomainIAMRoleName": "

The name of the IAM role to use when making API calls to the Directory Service.

This setting doesn't apply to RDS Custom DB instances.

", - "RestoreDBInstanceFromDBSnapshotMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you don't specify a value for DBParameterGroupName, then RDS uses the default DBParameterGroup for the specified DB engine.

This setting doesn't apply to RDS Custom.

Constraints:

", + "RestoreDBInstanceFromDBSnapshotMessage$DBParameterGroupName": "

The name of the DB parameter group to associate with this DB instance.

If you don't specify a value for DBParameterGroupName, then RDS uses the default DBParameterGroup for the specified DB engine.

This setting doesn't apply to RDS Custom.

Constraints:

", "RestoreDBInstanceFromDBSnapshotMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom.

", "RestoreDBInstanceFromDBSnapshotMessage$BackupTarget": "

Specifies where automated backups and manual snapshots are stored for the restored DB instance.

Possible values are outposts (Amazon Web Services Outposts) and region (Amazon Web Services Region). The default is region.

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", "RestoreDBInstanceFromDBSnapshotMessage$NetworkType": "

The network type of the DB instance.

Valid Values:

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

", @@ -5206,7 +5206,7 @@ "RestoreDBInstanceFromS3Message$DBInstanceClass": "

The compute and memory capacity of the DB instance, for example db.m4.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB Instance Class in the Amazon RDS User Guide.

Importing from Amazon S3 isn't supported on the db.t2.micro DB instance class.

", "RestoreDBInstanceFromS3Message$Engine": "

The name of the database engine to be used for this instance.

Valid Values: mysql

", "RestoreDBInstanceFromS3Message$MasterUsername": "

The name for the master user.

Constraints:

", - "RestoreDBInstanceFromS3Message$MasterUserPassword": "

The password for the master user. The password can include any printable ASCII character except \"/\", \"\"\", or \"@\".

Constraints: Can't be specified if ManageMasterUserPassword is turned on.

MariaDB

Constraints: Must contain from 8 to 41 characters.

Microsoft SQL Server

Constraints: Must contain from 8 to 128 characters.

MySQL

Constraints: Must contain from 8 to 41 characters.

Oracle

Constraints: Must contain from 8 to 30 characters.

PostgreSQL

Constraints: Must contain from 8 to 128 characters.

", + "RestoreDBInstanceFromS3Message$MasterUserPassword": "

The password for the master user.

Constraints:

Length Constraints:

", "RestoreDBInstanceFromS3Message$AvailabilityZone": "

The Availability Zone that the DB instance is created in. For information about Amazon Web Services Regions and Availability Zones, see Regions and Availability Zones in the Amazon RDS User Guide.

Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region.

Example: us-east-1d

Constraint: The AvailabilityZone parameter can't be specified if the DB instance is a Multi-AZ deployment. The specified Availability Zone must be in the same Amazon Web Services Region as the current endpoint.

", "RestoreDBInstanceFromS3Message$DBSubnetGroupName": "

A DB subnet group to associate with this DB instance.

Constraints: If supplied, must match the name of an existing DBSubnetGroup.

Example: mydbsubnetgroup

", "RestoreDBInstanceFromS3Message$PreferredMaintenanceWindow": "

The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). For more information, see Amazon RDS Maintenance Window in the Amazon RDS User Guide.

Constraints:

", @@ -5232,8 +5232,8 @@ "RestoreDBInstanceToPointInTimeMessage$AvailabilityZone": "

The Availability Zone (AZ) where the DB instance will be created.

Default: A random, system-chosen Availability Zone.

Constraints:

Example: us-east-1a

", "RestoreDBInstanceToPointInTimeMessage$DBSubnetGroupName": "

The DB subnet group name to use for the new instance.

Constraints:

Example: mydbsubnetgroup

", "RestoreDBInstanceToPointInTimeMessage$LicenseModel": "

The license model information for the restored DB instance.

This setting doesn't apply to RDS Custom.

Valid Values: license-included | bring-your-own-license | general-public-license

Default: Same as the source.

", - "RestoreDBInstanceToPointInTimeMessage$DBName": "

The database name for the restored DB instance.

This parameter isn't supported for the MySQL or MariaDB engines. It also doesn't apply to RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Valid Values:

Default: The same as source

Constraints:

", + "RestoreDBInstanceToPointInTimeMessage$DBName": "

The database name for the restored DB instance.

This parameter doesn't apply to the following DB instances:

", + "RestoreDBInstanceToPointInTimeMessage$Engine": "

The database engine to use for the new instance.

This setting doesn't apply to RDS Custom.

Valid Values:

Default: The same as source

Constraints:

", "RestoreDBInstanceToPointInTimeMessage$OptionGroupName": "

The name of the option group to use for the restored DB instance.

Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance after it is associated with a DB instance

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceToPointInTimeMessage$StorageType": "

The storage type to associate with the DB instance.

Valid Values: gp2 | gp3 | io1 | standard

Default: io1, if the Iops parameter is specified. Otherwise, gp2.

Constraints:

", "RestoreDBInstanceToPointInTimeMessage$TdeCredentialArn": "

The ARN from the key store with which to associate the instance for TDE encryption.

This setting doesn't apply to RDS Custom.

", @@ -5247,7 +5247,7 @@ "RestoreDBInstanceToPointInTimeMessage$SourceDbiResourceId": "

The resource ID of the source DB instance from which to restore.

", "RestoreDBInstanceToPointInTimeMessage$SourceDBInstanceAutomatedBackupsArn": "

The Amazon Resource Name (ARN) of the replicated automated backups from which to restore, for example, arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE.

This setting doesn't apply to RDS Custom.

", "RestoreDBInstanceToPointInTimeMessage$CustomIamInstanceProfile": "

The instance profile associated with the underlying Amazon EC2 instance of an RDS Custom DB instance. The instance profile must meet the following requirements:

For the list of permissions required for the IAM role, see Configure IAM and your VPC in the Amazon RDS User Guide.

This setting is required for RDS Custom.

", - "RestoreDBInstanceToPointInTimeMessage$BackupTarget": "

Specifies where automated backups and manual snapshots are stored for the restored DB instance.

Possible values are outposts (Amazon Web Services Outposts) and region (Amazon Web Services Region). The default is region.

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", + "RestoreDBInstanceToPointInTimeMessage$BackupTarget": "

The location for storing automated backups and manual snapshots for the restored DB instance.

Valid Values:

Default: region

For more information, see Working with Amazon RDS on Amazon Web Services Outposts in the Amazon RDS User Guide.

", "RestoreDBInstanceToPointInTimeMessage$NetworkType": "

The network type of the DB instance.

The network type is determined by the DBSubnetGroup specified for the DB instance. A DBSubnetGroup can support only the IPv4 protocol or the IPv4 and the IPv6 protocols (DUAL).

For more information, see Working with a DB instance in a VPC in the Amazon RDS User Guide.

Valid Values:

", "RevokeDBSecurityGroupIngressMessage$DBSecurityGroupName": "

The name of the DB security group to revoke ingress from.

", "RevokeDBSecurityGroupIngressMessage$CIDRIP": "

The IP range to revoke access from. Must be a valid CIDR range. If CIDRIP is specified, EC2SecurityGroupName, EC2SecurityGroupId and EC2SecurityGroupOwnerId can't be provided.

", diff --git a/models/apis/securityhub/2018-10-26/api-2.json b/models/apis/securityhub/2018-10-26/api-2.json index e6cfdd15d00..6af536ec84a 100644 --- a/models/apis/securityhub/2018-10-26/api-2.json +++ b/models/apis/securityhub/2018-10-26/api-2.json @@ -74,7 +74,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "BatchEnableStandards":{ @@ -89,7 +90,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "BatchGetAutomationRules":{ @@ -109,6 +111,23 @@ {"shape":"ResourceNotFoundException"} ] }, + "BatchGetConfigurationPolicyAssociations":{ + "name":"BatchGetConfigurationPolicyAssociations", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/batchget" + }, + "input":{"shape":"BatchGetConfigurationPolicyAssociationsRequest"}, + "output":{"shape":"BatchGetConfigurationPolicyAssociationsResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "BatchGetSecurityControls":{ "name":"BatchGetSecurityControls", "http":{ @@ -197,7 +216,8 @@ {"shape":"InternalException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"InvalidInputException"} + {"shape":"InvalidInputException"}, + {"shape":"AccessDeniedException"} ] }, "CreateActionTarget":{ @@ -232,6 +252,23 @@ {"shape":"LimitExceededException"} ] }, + "CreateConfigurationPolicy":{ + "name":"CreateConfigurationPolicy", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicy/create" + }, + "input":{"shape":"CreateConfigurationPolicyRequest"}, + "output":{"shape":"CreateConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceConflictException"} + ] + }, "CreateFindingAggregator":{ "name":"CreateFindingAggregator", "http":{ @@ -277,7 +314,8 @@ {"shape":"InvalidInputException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceConflictException"} + {"shape":"ResourceConflictException"}, + {"shape":"AccessDeniedException"} ] }, "DeclineInvitations":{ @@ -310,6 +348,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "DeleteConfigurationPolicy":{ + "name":"DeleteConfigurationPolicy", + "http":{ + "method":"DELETE", + "requestUri":"/configurationPolicy/{Identifier}" + }, + "input":{"shape":"DeleteConfigurationPolicyRequest"}, + "output":{"shape":"DeleteConfigurationPolicyResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceConflictException"} + ] + }, "DeleteFindingAggregator":{ "name":"DeleteFindingAggregator", "http":{ @@ -493,7 +549,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "DisableSecurityHub":{ @@ -508,7 +565,8 @@ {"shape":"InternalException"}, {"shape":"LimitExceededException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "DisassociateFromAdministratorAccount":{ @@ -558,7 +616,8 @@ {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, {"shape":"LimitExceededException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "EnableImportFindingsForProduct":{ @@ -589,7 +648,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} ] }, "EnableSecurityHub":{ @@ -624,6 +684,40 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetConfigurationPolicy":{ + "name":"GetConfigurationPolicy", + "http":{ + "method":"GET", + "requestUri":"/configurationPolicy/get/{Identifier}" + }, + "input":{"shape":"GetConfigurationPolicyRequest"}, + "output":{"shape":"GetConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetConfigurationPolicyAssociation":{ + "name":"GetConfigurationPolicyAssociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/get" + }, + "input":{"shape":"GetConfigurationPolicyAssociationRequest"}, + "output":{"shape":"GetConfigurationPolicyAssociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "GetEnabledStandards":{ "name":"GetEnabledStandards", "http":{ @@ -815,6 +909,39 @@ {"shape":"LimitExceededException"} ] }, + "ListConfigurationPolicies":{ + "name":"ListConfigurationPolicies", + "http":{ + "method":"GET", + "requestUri":"/configurationPolicy/list" + }, + "input":{"shape":"ListConfigurationPoliciesRequest"}, + "output":{"shape":"ListConfigurationPoliciesResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListConfigurationPolicyAssociations":{ + "name":"ListConfigurationPolicyAssociations", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/list" + }, + "input":{"shape":"ListConfigurationPolicyAssociationsRequest"}, + "output":{"shape":"ListConfigurationPolicyAssociationsResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"} + ] + }, "ListEnabledProductsForImport":{ "name":"ListEnabledProductsForImport", "http":{ @@ -934,6 +1061,40 @@ {"shape":"ResourceNotFoundException"} ] }, + "StartConfigurationPolicyAssociation":{ + "name":"StartConfigurationPolicyAssociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/associate" + }, + "input":{"shape":"StartConfigurationPolicyAssociationRequest"}, + "output":{"shape":"StartConfigurationPolicyAssociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, + "StartConfigurationPolicyDisassociation":{ + "name":"StartConfigurationPolicyDisassociation", + "http":{ + "method":"POST", + "requestUri":"/configurationPolicyAssociation/disassociate" + }, + "input":{"shape":"StartConfigurationPolicyDisassociationRequest"}, + "output":{"shape":"StartConfigurationPolicyDisassociationResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -978,6 +1139,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "UpdateConfigurationPolicy":{ + "name":"UpdateConfigurationPolicy", + "http":{ + "method":"PATCH", + "requestUri":"/configurationPolicy/{Identifier}" + }, + "input":{"shape":"UpdateConfigurationPolicyRequest"}, + "output":{"shape":"UpdateConfigurationPolicyResponse"}, + "errors":[ + {"shape":"InternalException"}, + {"shape":"InvalidAccessException"}, + {"shape":"InvalidInputException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceConflictException"} + ] + }, "UpdateFindingAggregator":{ "name":"UpdateFindingAggregator", "http":{ @@ -1039,7 +1218,10 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"LimitExceededException"} + {"shape":"LimitExceededException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceConflictException"} ] }, "UpdateSecurityControl":{ @@ -1056,7 +1238,8 @@ {"shape":"InvalidAccessException"}, {"shape":"LimitExceededException"}, {"shape":"ResourceNotFoundException"}, - {"shape":"ResourceInUseException"} + {"shape":"ResourceInUseException"}, + {"shape":"AccessDeniedException"} ] }, "UpdateSecurityHubConfiguration":{ @@ -1072,7 +1255,8 @@ {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, {"shape":"LimitExceededException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] }, "UpdateStandardsControl":{ @@ -1087,7 +1271,8 @@ {"shape":"InternalException"}, {"shape":"InvalidInputException"}, {"shape":"InvalidAccessException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} ] } }, @@ -1265,6 +1450,14 @@ "type":"list", "member":{"shape":"AssociatedStandard"} }, + "AssociationFilters":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "AssociationType":{"shape":"AssociationType"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"} + } + }, "AssociationSetDetails":{ "type":"structure", "members":{ @@ -1294,6 +1487,13 @@ "DISABLED" ] }, + "AssociationType":{ + "type":"string", + "enum":[ + "INHERITED", + "APPLIED" + ] + }, "AutoEnableStandards":{ "type":"string", "enum":[ @@ -1389,7 +1589,10 @@ "NoteText":{"shape":"StringFilterList"}, "NoteUpdatedAt":{"shape":"DateFilterList"}, "NoteUpdatedBy":{"shape":"StringFilterList"}, - "UserDefinedFields":{"shape":"MapFilterList"} + "UserDefinedFields":{"shape":"MapFilterList"}, + "ResourceApplicationArn":{"shape":"StringFilterList"}, + "ResourceApplicationName":{"shape":"StringFilterList"}, + "AwsAccountName":{"shape":"StringFilterList"} } }, "AutomationRulesMetadata":{ @@ -6269,7 +6472,9 @@ "Action":{"shape":"Action"}, "FindingProviderFields":{"shape":"FindingProviderFields"}, "Sample":{"shape":"Boolean"}, - "GeneratorDetails":{"shape":"GeneratorDetails"} + "GeneratorDetails":{"shape":"GeneratorDetails"}, + "ProcessedAt":{"shape":"NonEmptyString"}, + "AwsAccountName":{"shape":"NonEmptyString"} } }, "AwsSecurityFindingFilters":{ @@ -6391,7 +6596,10 @@ "VulnerabilitiesExploitAvailable":{"shape":"StringFilterList"}, "VulnerabilitiesFixAvailable":{"shape":"StringFilterList"}, "ComplianceSecurityControlParametersName":{"shape":"StringFilterList"}, - "ComplianceSecurityControlParametersValue":{"shape":"StringFilterList"} + "ComplianceSecurityControlParametersValue":{"shape":"StringFilterList"}, + "AwsAccountName":{"shape":"StringFilterList"}, + "ResourceApplicationName":{"shape":"StringFilterList"}, + "ResourceApplicationArn":{"shape":"StringFilterList"} } }, "AwsSecurityFindingIdentifier":{ @@ -6920,6 +7128,20 @@ "UnprocessedAutomationRules":{"shape":"UnprocessedAutomationRulesList"} } }, + "BatchGetConfigurationPolicyAssociationsRequest":{ + "type":"structure", + "required":["ConfigurationPolicyAssociationIdentifiers"], + "members":{ + "ConfigurationPolicyAssociationIdentifiers":{"shape":"ConfigurationPolicyAssociationsList"} + } + }, + "BatchGetConfigurationPolicyAssociationsResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociations":{"shape":"ConfigurationPolicyAssociationList"}, + "UnprocessedConfigurationPolicyAssociations":{"shape":"UnprocessedConfigurationPolicyAssociationList"} + } + }, "BatchGetSecurityControlsRequest":{ "type":"structure", "required":["SecurityControlIds"], @@ -7167,6 +7389,59 @@ }, "union":true }, + "ConfigurationPolicyAssociation":{ + "type":"structure", + "members":{ + "Target":{"shape":"Target"} + } + }, + "ConfigurationPolicyAssociationList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociationSummary"} + }, + "ConfigurationPolicyAssociationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "SUCCESS", + "FAILED" + ] + }, + "ConfigurationPolicyAssociationSummary":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "ConfigurationPolicyAssociationSummaryList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociationSummary"} + }, + "ConfigurationPolicyAssociationsList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicyAssociation"} + }, + "ConfigurationPolicySummary":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "ServiceEnabled":{"shape":"Boolean"} + } + }, + "ConfigurationPolicySummaryList":{ + "type":"list", + "member":{"shape":"ConfigurationPolicySummary"} + }, "ContainerDetails":{ "type":"structure", "members":{ @@ -7246,6 +7521,31 @@ "RuleArn":{"shape":"NonEmptyString"} } }, + "CreateConfigurationPolicyRequest":{ + "type":"structure", + "required":[ + "Name", + "ConfigurationPolicy" + ], + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "ConfigurationPolicy":{"shape":"Policy"}, + "Tags":{"shape":"TagMap"} + } + }, + "CreateConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "CreateFindingAggregatorRequest":{ "type":"structure", "required":["RegionLinkingMode"], @@ -7400,6 +7700,22 @@ "ActionTargetArn":{"shape":"NonEmptyString"} } }, + "DeleteConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + } + } + }, + "DeleteConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteFindingAggregatorRequest":{ "type":"structure", "required":["FindingAggregatorArn"], @@ -7505,7 +7821,8 @@ "members":{ "AutoEnable":{"shape":"Boolean"}, "MemberAccountLimitReached":{"shape":"Boolean"}, - "AutoEnableStandards":{"shape":"AutoEnableStandards"} + "AutoEnableStandards":{"shape":"AutoEnableStandards"}, + "OrganizationConfiguration":{"shape":"OrganizationConfiguration"} } }, "DescribeProductsRequest":{ @@ -7624,6 +7941,10 @@ "members":{ } }, + "DisabledSecurityControlIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, "DisassociateFromAdministratorAccountRequest":{ "type":"structure", "members":{ @@ -7711,6 +8032,14 @@ "members":{ } }, + "EnabledSecurityControlIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, + "EnabledStandardIdentifierList":{ + "type":"list", + "member":{"shape":"NonEmptyString"} + }, "EnumConfigurationOptions":{ "type":"structure", "members":{ @@ -7880,6 +8209,48 @@ "Administrator":{"shape":"Invitation"} } }, + "GetConfigurationPolicyAssociationRequest":{ + "type":"structure", + "required":["Target"], + "members":{ + "Target":{"shape":"Target"} + } + }, + "GetConfigurationPolicyAssociationResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "GetConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + } + } + }, + "GetConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "GetEnabledStandardsRequest":{ "type":"structure", "members":{ @@ -8268,6 +8639,43 @@ "NextToken":{"shape":"NextToken"} } }, + "ListConfigurationPoliciesRequest":{ + "type":"structure", + "members":{ + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"MaxResults" + } + } + }, + "ListConfigurationPoliciesResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicySummaries":{"shape":"ConfigurationPolicySummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, + "ListConfigurationPolicyAssociationsRequest":{ + "type":"structure", + "members":{ + "NextToken":{"shape":"NextToken"}, + "MaxResults":{"shape":"MaxResults"}, + "Filters":{"shape":"AssociationFilters"} + } + }, + "ListConfigurationPolicyAssociationsResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociationSummaries":{"shape":"ConfigurationPolicyAssociationSummaryList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListEnabledProductsForImportRequest":{ "type":"structure", "members":{ @@ -8673,6 +9081,29 @@ "Cells":{"shape":"Cells"} } }, + "OrganizationConfiguration":{ + "type":"structure", + "members":{ + "ConfigurationType":{"shape":"OrganizationConfigurationConfigurationType"}, + "Status":{"shape":"OrganizationConfigurationStatus"}, + "StatusMessage":{"shape":"NonEmptyString"} + } + }, + "OrganizationConfigurationConfigurationType":{ + "type":"string", + "enum":[ + "CENTRAL", + "LOCAL" + ] + }, + "OrganizationConfigurationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "ENABLED", + "FAILED" + ] + }, "Page":{ "type":"structure", "members":{ @@ -8760,6 +9191,13 @@ "Operation":{"shape":"NonEmptyString"} } }, + "Policy":{ + "type":"structure", + "members":{ + "SecurityHub":{"shape":"SecurityHubPolicy"} + }, + "union":true + }, "PortProbeAction":{ "type":"structure", "members":{ @@ -8929,7 +9367,9 @@ "ResourceRole":{"shape":"NonEmptyString"}, "Tags":{"shape":"FieldMap"}, "DataClassification":{"shape":"DataClassificationDetails"}, - "Details":{"shape":"ResourceDetails"} + "Details":{"shape":"ResourceDetails"}, + "ApplicationName":{"shape":"NonEmptyString"}, + "ApplicationArn":{"shape":"NonEmptyString"} } }, "ResourceArn":{ @@ -9326,6 +9766,17 @@ "LastUpdateReason":{"shape":"AlphaNumericNonEmptyString"} } }, + "SecurityControlCustomParameter":{ + "type":"structure", + "members":{ + "SecurityControlId":{"shape":"NonEmptyString"}, + "Parameters":{"shape":"Parameters"} + } + }, + "SecurityControlCustomParametersList":{ + "type":"list", + "member":{"shape":"SecurityControlCustomParameter"} + }, "SecurityControlDefinition":{ "type":"structure", "required":[ @@ -9370,10 +9821,26 @@ "type":"list", "member":{"shape":"SecurityControl"} }, + "SecurityControlsConfiguration":{ + "type":"structure", + "members":{ + "EnabledSecurityControlIdentifiers":{"shape":"EnabledSecurityControlIdentifierList"}, + "DisabledSecurityControlIdentifiers":{"shape":"DisabledSecurityControlIdentifierList"}, + "SecurityControlCustomParameters":{"shape":"SecurityControlCustomParametersList"} + } + }, "SecurityGroups":{ "type":"list", "member":{"shape":"NonEmptyString"} }, + "SecurityHubPolicy":{ + "type":"structure", + "members":{ + "ServiceEnabled":{"shape":"Boolean"}, + "EnabledStandardIdentifiers":{"shape":"EnabledStandardIdentifierList"}, + "SecurityControlsConfiguration":{"shape":"SecurityControlsConfiguration"} + } + }, "SensitiveDataDetections":{ "type":"structure", "members":{ @@ -9661,6 +10128,42 @@ "type":"list", "member":{"shape":"StandardsSubscription"} }, + "StartConfigurationPolicyAssociationRequest":{ + "type":"structure", + "required":[ + "ConfigurationPolicyIdentifier", + "Target" + ], + "members":{ + "ConfigurationPolicyIdentifier":{"shape":"NonEmptyString"}, + "Target":{"shape":"Target"} + } + }, + "StartConfigurationPolicyAssociationResponse":{ + "type":"structure", + "members":{ + "ConfigurationPolicyId":{"shape":"NonEmptyString"}, + "TargetId":{"shape":"NonEmptyString"}, + "TargetType":{"shape":"TargetType"}, + "AssociationType":{"shape":"AssociationType"}, + "UpdatedAt":{"shape":"Timestamp"}, + "AssociationStatus":{"shape":"ConfigurationPolicyAssociationStatus"}, + "AssociationStatusMessage":{"shape":"NonEmptyString"} + } + }, + "StartConfigurationPolicyDisassociationRequest":{ + "type":"structure", + "required":["ConfigurationPolicyIdentifier"], + "members":{ + "Target":{"shape":"Target"}, + "ConfigurationPolicyIdentifier":{"shape":"NonEmptyString"} + } + }, + "StartConfigurationPolicyDisassociationResponse":{ + "type":"structure", + "members":{ + } + }, "StatelessCustomActionDefinition":{ "type":"structure", "members":{ @@ -9788,6 +10291,22 @@ "type":"string", "max":256 }, + "Target":{ + "type":"structure", + "members":{ + "AccountId":{"shape":"NonEmptyString"}, + "OrganizationalUnitId":{"shape":"NonEmptyString"}, + "RootId":{"shape":"NonEmptyString"} + }, + "union":true + }, + "TargetType":{ + "type":"string", + "enum":[ + "ACCOUNT", + "ORGANIZATIONAL_UNIT" + ] + }, "Threat":{ "type":"structure", "members":{ @@ -9863,6 +10382,18 @@ "type":"list", "member":{"shape":"UnprocessedAutomationRule"} }, + "UnprocessedConfigurationPolicyAssociation":{ + "type":"structure", + "members":{ + "ConfigurationPolicyAssociationIdentifiers":{"shape":"ConfigurationPolicyAssociation"}, + "ErrorCode":{"shape":"NonEmptyString"}, + "ErrorReason":{"shape":"NonEmptyString"} + } + }, + "UnprocessedConfigurationPolicyAssociationList":{ + "type":"list", + "member":{"shape":"UnprocessedConfigurationPolicyAssociation"} + }, "UnprocessedErrorCode":{ "type":"string", "enum":[ @@ -9982,6 +10513,33 @@ "max":100, "min":1 }, + "UpdateConfigurationPolicyRequest":{ + "type":"structure", + "required":["Identifier"], + "members":{ + "Identifier":{ + "shape":"NonEmptyString", + "location":"uri", + "locationName":"Identifier" + }, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedReason":{"shape":"NonEmptyString"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, + "UpdateConfigurationPolicyResponse":{ + "type":"structure", + "members":{ + "Arn":{"shape":"NonEmptyString"}, + "Id":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "UpdatedAt":{"shape":"Timestamp"}, + "CreatedAt":{"shape":"Timestamp"}, + "ConfigurationPolicy":{"shape":"Policy"} + } + }, "UpdateFindingAggregatorRequest":{ "type":"structure", "required":[ @@ -10041,7 +10599,8 @@ "required":["AutoEnable"], "members":{ "AutoEnable":{"shape":"Boolean"}, - "AutoEnableStandards":{"shape":"AutoEnableStandards"} + "AutoEnableStandards":{"shape":"AutoEnableStandards"}, + "OrganizationConfiguration":{"shape":"OrganizationConfiguration"} } }, "UpdateOrganizationConfigurationResponse":{ diff --git a/models/apis/securityhub/2018-10-26/docs-2.json b/models/apis/securityhub/2018-10-26/docs-2.json index 3ab6a442d51..bf597225779 100644 --- a/models/apis/securityhub/2018-10-26/docs-2.json +++ b/models/apis/securityhub/2018-10-26/docs-2.json @@ -8,6 +8,7 @@ "BatchDisableStandards": "

Disables the standards specified by the provided StandardsSubscriptionArns.

For more information, see Security Standards section of the Security Hub User Guide.

", "BatchEnableStandards": "

Enables the standards specified by the provided StandardsArn. To obtain the ARN for a standard, use the DescribeStandards operation.

For more information, see the Security Standards section of the Security Hub User Guide.

", "BatchGetAutomationRules": "

Retrieves a list of details for automation rules based on rule Amazon Resource Names (ARNs).

", + "BatchGetConfigurationPolicyAssociations": "

Returns associations between an Security Hub configuration and a batch of target accounts, organizational units, or the root. Only the Security Hub delegated administrator can invoke this operation from the home Region. A configuration can refer to a configuration policy or to a self-managed configuration.

", "BatchGetSecurityControls": "

Provides details about a batch of security controls for the current Amazon Web Services account and Amazon Web Services Region.

", "BatchGetStandardsControlAssociations": "

For a batch of security controls and standards, identifies whether each control is currently enabled or disabled in a standard.

", "BatchImportFindings": "

Imports security findings generated by a finding provider into Security Hub. This action is requested by the finding provider to import its findings into Security Hub.

BatchImportFindings must be called by one of the following:

The maximum allowed size for a finding is 240 Kb. An error is returned for any finding larger than 240 Kb.

After a finding is created, BatchImportFindings cannot be used to update the following finding fields and objects, which Security Hub customers use to manage their investigation workflow.

Finding providers also should not use BatchImportFindings to update the following attributes.

Instead, finding providers use FindingProviderFields to provide values for these attributes.

", @@ -16,18 +17,20 @@ "BatchUpdateStandardsControlAssociations": "

For a batch of security controls and standards, this operation updates the enablement status of a control in a standard.

", "CreateActionTarget": "

Creates a custom action target in Security Hub.

You can use custom actions on findings and insights in Security Hub to trigger target actions in Amazon CloudWatch Events.

", "CreateAutomationRule": "

Creates an automation rule based on input parameters.

", + "CreateConfigurationPolicy": "

Creates a configuration policy with the defined configuration. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "CreateFindingAggregator": "

Used to enable finding aggregation. Must be called from the aggregation Region.

For more details about cross-Region replication, see Configuring finding aggregation in the Security Hub User Guide.

", "CreateInsight": "

Creates a custom insight in Security Hub. An insight is a consolidation of findings that relate to a security issue that requires attention or remediation.

To group the related findings in the insight, use the GroupByAttribute.

", "CreateMembers": "

Creates a member association in Security Hub between the specified accounts and the account used to make the request, which is the administrator account. If you are integrated with Organizations, then the administrator account is designated by the organization management account.

CreateMembers is always used to add accounts that are not organization members.

For accounts that are managed using Organizations, CreateMembers is only used in the following cases:

This action can only be used by an account that has Security Hub enabled. To enable Security Hub, you can use the EnableSecurityHub operation.

For accounts that are not organization members, you create the account association and then send an invitation to the member account. To send the invitation, you use the InviteMembers operation. If the account owner accepts the invitation, the account becomes a member account in Security Hub.

Accounts that are managed using Organizations do not receive an invitation. They automatically become a member account in Security Hub.

A permissions policy is added that permits the administrator account to view the findings generated in the member account.

To remove the association between the administrator and member accounts, use the DisassociateFromMasterAccount or DisassociateMembers operation.

", "DeclineInvitations": "

Declines invitations to become a member account.

A prospective member account uses this operation to decline an invitation to become a member.

This operation is only called by member accounts that aren't part of an organization. Organization accounts don't receive invitations.

", "DeleteActionTarget": "

Deletes a custom action target from Security Hub.

Deleting a custom action target does not affect any findings or insights that were already sent to Amazon CloudWatch Events using the custom action.

", + "DeleteConfigurationPolicy": "

Deletes a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region. For the deletion to succeed, you must first disassociate a configuration policy from target accounts, organizational units, or the root by invoking the StartConfigurationPolicyDisassociation operation.

", "DeleteFindingAggregator": "

Deletes a finding aggregator. When you delete the finding aggregator, you stop finding aggregation.

When you stop finding aggregation, findings that were already aggregated to the aggregation Region are still visible from the aggregation Region. New findings and finding updates are not aggregated.

", "DeleteInsight": "

Deletes the insight specified by the InsightArn.

", "DeleteInvitations": "

Deletes invitations received by the Amazon Web Services account to become a member account.

A Security Hub administrator account can use this operation to delete invitations sent to one or more member accounts.

This operation is only used to delete invitations that are sent to member accounts that aren't part of an organization. Organization accounts don't receive invitations.

", "DeleteMembers": "

Deletes the specified member accounts from Security Hub.

You can invoke this API only to delete accounts that became members through invitation. You can't invoke this API to delete accounts that belong to an Organizations organization.

", "DescribeActionTargets": "

Returns a list of the custom action targets in Security Hub in your account.

", "DescribeHub": "

Returns details about the Hub resource in your account, including the HubArn and the time when you enabled Security Hub.

", - "DescribeOrganizationConfiguration": "

Returns information about the Organizations configuration for Security Hub. Can only be called from a Security Hub administrator account.

", + "DescribeOrganizationConfiguration": "

Returns information about the way your organization is configured in Security Hub. Only the Security Hub administrator account can invoke this operation.

", "DescribeProducts": "

Returns information about product integrations in Security Hub.

You can optionally provide an integration ARN. If you provide an integration ARN, then the results only include that integration.

If you do not provide an integration ARN, then the results include all of the available product integrations.

", "DescribeStandards": "

Returns a list of the available standards in Security Hub.

For each standard, the results include the standard ARN, the name, and a description.

", "DescribeStandardsControls": "

Returns a list of security standards controls.

For each control, the results include information about whether it is currently enabled, the severity, and a link to remediation information.

", @@ -41,6 +44,8 @@ "EnableOrganizationAdminAccount": "

Designates the Security Hub administrator account for an organization. Can only be called by the organization management account.

", "EnableSecurityHub": "

Enables Security Hub for your account in the current Region or the Region you specify in the request.

When you enable Security Hub, you grant to Security Hub the permissions necessary to gather findings from other services that are integrated with Security Hub.

When you use the EnableSecurityHub operation to enable Security Hub, you also automatically enable the following standards:

Other standards are not automatically enabled.

To opt out of automatically enabled standards, set EnableDefaultStandards to false.

After you enable Security Hub, to enable a standard, use the BatchEnableStandards operation. To disable a standard, use the BatchDisableStandards operation.

To learn more, see the setup information in the Security Hub User Guide.

", "GetAdministratorAccount": "

Provides the details for the Security Hub administrator account for the current member account.

Can be used by both member accounts that are managed using Organizations and accounts that were invited manually.

", + "GetConfigurationPolicy": "

Provides information about a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", + "GetConfigurationPolicyAssociation": "

Returns the association between a configuration and a target account, organizational unit, or the root. The configuration can be a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "GetEnabledStandards": "

Returns a list of the standards that are currently enabled.

", "GetFindingAggregator": "

Returns the current finding aggregation configuration.

", "GetFindingHistory": "

Returns history for a Security Hub finding in the last 90 days. The history includes changes made to any fields in the Amazon Web Services Security Finding Format (ASFF).

", @@ -53,6 +58,8 @@ "GetSecurityControlDefinition": "

Retrieves the definition of a security control. The definition includes the control title, description, Region availability, parameter definitions, and other details.

", "InviteMembers": "

Invites other Amazon Web Services accounts to become member accounts for the Security Hub administrator account that the invitation is sent from.

This operation is only used to invite accounts that do not belong to an organization. Organization accounts do not receive invitations.

Before you can use this action to invite a member, you must first use the CreateMembers action to create the member account in Security Hub.

When the account owner enables Security Hub and accepts the invitation to become a member account, the administrator account can view the findings generated from the member account.

", "ListAutomationRules": "

A list of automation rules and their metadata for the calling account.

", + "ListConfigurationPolicies": "

Lists the configuration policies that the Security Hub delegated administrator has created for your organization. Only the delegated administrator can invoke this operation from the home Region.

", + "ListConfigurationPolicyAssociations": "

Provides information about the associations for your configuration policies and self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "ListEnabledProductsForImport": "

Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub.

", "ListFindingAggregators": "

If finding aggregation is enabled, then ListFindingAggregators returns the ARN of the finding aggregator. You can run this operation from any Region.

", "ListInvitations": "

Lists all Security Hub membership invitations that were sent to the current Amazon Web Services account.

This operation is only used by accounts that are managed by invitation. Accounts that are managed using the integration with Organizations do not receive invitations.

", @@ -61,13 +68,16 @@ "ListSecurityControlDefinitions": "

Lists all of the security controls that apply to a specified standard.

", "ListStandardsControlAssociations": "

Specifies whether a control is currently enabled or disabled in each enabled standard in the calling account.

", "ListTagsForResource": "

Returns a list of tags associated with a resource.

", + "StartConfigurationPolicyAssociation": "

Associates a target account, organizational unit, or the root with a specified configuration. The target can be associated with a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", + "StartConfigurationPolicyDisassociation": "

Disassociates a target account, organizational unit, or the root from a specified configuration. When you disassociate a configuration from its target, the target inherits the configuration of the closest parent. If there’s no configuration to inherit, the target retains its settings but becomes a self-managed account. A target can be disassociated from a configuration policy or self-managed behavior. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "TagResource": "

Adds one or more tags to a resource.

", "UntagResource": "

Removes one or more tags from a resource.

", "UpdateActionTarget": "

Updates the name and description of a custom action target in Security Hub.

", + "UpdateConfigurationPolicy": "

Updates a configuration policy. Only the Security Hub delegated administrator can invoke this operation from the home Region.

", "UpdateFindingAggregator": "

Updates the finding aggregation configuration. Used to update the Region linking mode and the list of included or excluded Regions. You cannot use UpdateFindingAggregator to change the aggregation Region.

You must run UpdateFindingAggregator from the current aggregation Region.

", "UpdateFindings": "

UpdateFindings is deprecated. Instead of UpdateFindings, use BatchUpdateFindings.

Updates the Note and RecordState of the Security Hub-aggregated findings that the filter attributes specify. Any member account that can view the finding also sees the update to the finding.

", "UpdateInsight": "

Updates the Security Hub insight identified by the specified insight ARN.

", - "UpdateOrganizationConfiguration": "

Used to update the configuration related to Organizations. Can only be called from a Security Hub administrator account.

", + "UpdateOrganizationConfiguration": "

Updates the configuration of your organization in Security Hub. Only the Security Hub administrator account can invoke this operation.

", "UpdateSecurityControl": "

Updates the properties of a security control.

", "UpdateSecurityHubConfiguration": "

Updates configuration options for Security Hub.

", "UpdateStandardsControl": "

Used to control whether an individual security standard control is enabled or disabled.

" @@ -245,6 +255,12 @@ "Compliance$AssociatedStandards": "

The enabled security standards in which a security control is currently enabled.

" } }, + "AssociationFilters": { + "base": "

Options for filtering the ListConfigurationPolicyAssociations response. You can filter by the Amazon Resource Name (ARN) or universally unique identifier (UUID) of a configuration policy, AssociationType, or AssociationStatus.

", + "refs": { + "ListConfigurationPolicyAssociationsRequest$Filters": "

Options for filtering the ListConfigurationPolicyAssociations response. You can filter by the Amazon Resource Name (ARN) or universally unique identifier (UUID) of a configuration, AssociationType, or AssociationStatus.

" + } + }, "AssociationSetDetails": { "base": "

The associations between a route table and one or more subnets or a gateway.

", "refs": { @@ -271,11 +287,20 @@ "StandardsControlAssociationUpdate$AssociationStatus": "

The desired enablement status of the control in the standard.

" } }, + "AssociationType": { + "base": null, + "refs": { + "AssociationFilters$AssociationType": "

Indicates whether the association between a target and a configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "ConfigurationPolicyAssociationSummary$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "GetConfigurationPolicyAssociationResponse$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

", + "StartConfigurationPolicyAssociationResponse$AssociationType": "

Indicates whether the association between the specified target and the configuration was directly applied by the Security Hub delegated administrator or inherited from a parent.

" + } + }, "AutoEnableStandards": { "base": null, "refs": { - "DescribeOrganizationConfigurationResponse$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards for new member accounts in the organization.

The default value of this parameter is equal to DEFAULT.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts.

", - "UpdateOrganizationConfigurationRequest$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards for new member accounts in the organization.

By default, this parameter is equal to DEFAULT, and new member accounts are automatically enabled with default Security Hub standards.

To opt out of enabling default standards for new member accounts, set this parameter equal to NONE.

" + "DescribeOrganizationConfigurationResponse$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards in new member accounts when they join the organization.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts. The default value of this parameter is equal to DEFAULT.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to NONE and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which specific security standards are enabled and associate the policy with new organization accounts.

", + "UpdateOrganizationConfigurationRequest$AutoEnableStandards": "

Whether to automatically enable Security Hub default standards in new member accounts when they join the organization.

The default value of this parameter is equal to DEFAULT.

If equal to DEFAULT, then Security Hub default standards are automatically enabled for new member accounts. If equal to NONE, then default standards are not automatically enabled for new member accounts.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to NONE and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which specific security standards are enabled and associate the policy with new organization accounts.

" } }, "AutomationRulesAction": { @@ -4258,6 +4283,16 @@ "refs": { } }, + "BatchGetConfigurationPolicyAssociationsRequest": { + "base": null, + "refs": { + } + }, + "BatchGetConfigurationPolicyAssociationsResponse": { + "base": null, + "refs": { + } + }, "BatchGetSecurityControlsRequest": { "base": null, "refs": { @@ -4534,10 +4569,11 @@ "BooleanConfigurationOptions$DefaultValue": "

The Security Hub default value for a boolean parameter.

", "BooleanFilter$Value": "

The value of the boolean.

", "ClassificationResult$AdditionalOccurrences": "

Indicates whether there are additional occurrences of sensitive data that are not included in the finding. This occurs when the number of occurrences exceeds the maximum that can be included.

", + "ConfigurationPolicySummary$ServiceEnabled": "

Indicates whether the service that the configuration policy applies to is enabled in the policy.

", "ContainerDetails$Privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", "CreateAutomationRuleRequest$IsTerminal": "

Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.

", "DescribeHubResponse$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

If set to true, then new controls for enabled standards are enabled automatically. If set to false, then new controls are not enabled.

", - "DescribeOrganizationConfigurationResponse$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

If set to true, then Security Hub is enabled for new accounts. If set to false, then new accounts are not added automatically.

", + "DescribeOrganizationConfigurationResponse$AutoEnable": "

Whether to automatically enable Security Hub in new member accounts when they join the organization.

If set to true, then Security Hub is automatically enabled in new accounts. If set to false, then Security Hub isn't enabled in new accounts automatically. The default value is false.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to false and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which Security Hub is enabled and associate the policy with new organization accounts.

", "DescribeOrganizationConfigurationResponse$MemberAccountLimitReached": "

Whether the maximum number of allowed member accounts are already associated with the Security Hub administrator account.

", "DnsRequestAction$Blocked": "

Indicates whether the DNS request was blocked.

", "EnableSecurityHubRequest$EnableDefaultStandards": "

Whether to enable the security standards that Security Hub has designated as automatically enabled. If you do not provide a value for EnableDefaultStandards, it is set to true. To not enable the automatically enabled standards, set EnableDefaultStandards to false.

", @@ -4546,9 +4582,10 @@ "NetworkConnectionAction$Blocked": "

Indicates whether the network connection attempt was blocked.

", "ParameterValue$Boolean": "

A control parameter that is a boolean.

", "PortProbeAction$Blocked": "

Indicates whether the port probe was blocked.

", + "SecurityHubPolicy$ServiceEnabled": "

Indicates whether Security Hub is enabled in the policy.

", "Standard$EnabledByDefault": "

Whether the standard is enabled by default. When Security Hub is enabled from the console, if a standard is enabled by default, the check box for that standard is selected by default.

When Security Hub is enabled using the EnableSecurityHub API operation, the standard is enabled by default unless EnableDefaultStandards is set to false.

", "UpdateAutomationRulesRequestItem$IsTerminal": "

Specifies whether a rule is the last to be applied with respect to a finding that matches the rule criteria. This is useful when a finding matches the criteria for multiple rules, and each rule has different actions. If a rule is terminal, Security Hub applies the rule action to a finding that matches the rule criteria and doesn't evaluate other rules for the finding. By default, a rule isn't terminal.

", - "UpdateOrganizationConfigurationRequest$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

By default, this is false, and new accounts are not added automatically.

To automatically enable Security Hub for new accounts, set this to true.

", + "UpdateOrganizationConfigurationRequest$AutoEnable": "

Whether to automatically enable Security Hub in new member accounts when they join the organization.

If set to true, then Security Hub is automatically enabled in new accounts. If set to false, then Security Hub isn't enabled in new accounts automatically. The default value is false.

If the ConfigurationType of your organization is set to CENTRAL, then this field is set to false and can't be changed in the home Region and linked Regions. However, in that case, the delegated administrator can create a configuration policy in which Security Hub is enabled and associate the policy with new organization accounts.

", "UpdateSecurityHubConfigurationRequest$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

By default, this is set to true, and new controls are enabled automatically. To not automatically enable new controls, set this to false.

", "VpcInfoPeeringOptionsDetails$AllowDnsResolutionFromRemoteVpc": "

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

", "VpcInfoPeeringOptionsDetails$AllowEgressFromLocalClassicLinkToRemoteVpc": "

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

", @@ -4651,6 +4688,59 @@ "ParameterDefinition$ConfigurationOptions": "

The options for customizing a control parameter. Customization options vary based on the data type of the parameter.

" } }, + "ConfigurationPolicyAssociation": { + "base": "

Provides details about the association between an Security Hub configuration and a target account, organizational unit, or the root. An association can exist between a target and a configuration policy, or between a target and self-managed behavior.

", + "refs": { + "ConfigurationPolicyAssociationsList$member": null, + "UnprocessedConfigurationPolicyAssociation$ConfigurationPolicyAssociationIdentifiers": "

Configuration policy association identifiers that were specified in a BatchGetConfigurationPolicyAssociations request but couldn’t be processed due to an error.

" + } + }, + "ConfigurationPolicyAssociationList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsResponse$ConfigurationPolicyAssociations": "

Describes associations for the target accounts, OUs, or the root.

" + } + }, + "ConfigurationPolicyAssociationStatus": { + "base": null, + "refs": { + "AssociationFilters$AssociationStatus": "

The current status of the association between a target and a configuration policy.

", + "ConfigurationPolicyAssociationSummary$AssociationStatus": "

The current status of the association between the specified target and the configuration.

", + "GetConfigurationPolicyAssociationResponse$AssociationStatus": "

The current status of the association between the specified target and the configuration.

", + "StartConfigurationPolicyAssociationResponse$AssociationStatus": "

The current status of the association between the specified target and the configuration.

" + } + }, + "ConfigurationPolicyAssociationSummary": { + "base": "

An object that contains the details of a configuration policy association that’s returned in a ListConfigurationPolicyAssociations request.

", + "refs": { + "ConfigurationPolicyAssociationList$member": null, + "ConfigurationPolicyAssociationSummaryList$member": null + } + }, + "ConfigurationPolicyAssociationSummaryList": { + "base": null, + "refs": { + "ListConfigurationPolicyAssociationsResponse$ConfigurationPolicyAssociationSummaries": "

An object that contains the details of each configuration policy association that’s returned in a ListConfigurationPolicyAssociations request.

" + } + }, + "ConfigurationPolicyAssociationsList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsRequest$ConfigurationPolicyAssociationIdentifiers": "

Specifies one or more target account IDs, organizational unit (OU) IDs, or the root ID to retrieve associations for.

" + } + }, + "ConfigurationPolicySummary": { + "base": "

An object that contains the details of an Security Hub configuration policy that’s returned in a ListConfigurationPolicies request.

", + "refs": { + "ConfigurationPolicySummaryList$member": null + } + }, + "ConfigurationPolicySummaryList": { + "base": null, + "refs": { + "ListConfigurationPoliciesResponse$ConfigurationPolicySummaries": "

Provides metadata for each of your configuration policies.

" + } + }, "ContainerDetails": { "base": "

Container details related to a finding.

", "refs": { @@ -4699,6 +4789,16 @@ "refs": { } }, + "CreateConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "CreateConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "CreateFindingAggregatorRequest": { "base": null, "refs": { @@ -4837,6 +4937,16 @@ "refs": { } }, + "DeleteConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "DeleteFindingAggregatorRequest": { "base": null, "refs": { @@ -4967,6 +5077,12 @@ "refs": { } }, + "DisabledSecurityControlIdentifierList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$DisabledSecurityControlIdentifiers": "

A list of security controls that are disabled in the configuration policy. Security Hub enables all other controls (including newly released controls) other than the listed controls.

" + } + }, "DisassociateFromAdministratorAccountRequest": { "base": null, "refs": { @@ -5069,6 +5185,18 @@ "refs": { } }, + "EnabledSecurityControlIdentifierList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$EnabledSecurityControlIdentifiers": "

A list of security controls that are enabled in the configuration policy. Security Hub disables all other controls (including newly released controls) other than the listed controls.

" + } + }, + "EnabledStandardIdentifierList": { + "base": null, + "refs": { + "SecurityHubPolicy$EnabledStandardIdentifiers": "

A list that defines which security standards are enabled in the configuration policy.

" + } + }, "EnumConfigurationOptions": { "base": "

The options for customizing a security control parameter that is an enum.

", "refs": { @@ -5241,6 +5369,26 @@ "refs": { } }, + "GetConfigurationPolicyAssociationRequest": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyAssociationResponse": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "GetConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "GetEnabledStandardsRequest": { "base": null, "refs": { @@ -5773,6 +5921,26 @@ "refs": { } }, + "ListConfigurationPoliciesRequest": { + "base": null, + "refs": { + } + }, + "ListConfigurationPoliciesResponse": { + "base": null, + "refs": { + } + }, + "ListConfigurationPolicyAssociationsRequest": { + "base": null, + "refs": { + } + }, + "ListConfigurationPolicyAssociationsResponse": { + "base": null, + "refs": { + } + }, "ListEnabledProductsForImportRequest": { "base": null, "refs": { @@ -5957,6 +6125,8 @@ "GetFindingsRequest$MaxResults": "

The maximum number of findings to return.

", "GetInsightsRequest$MaxResults": "

The maximum number of items to return in the response.

", "ListAutomationRulesRequest$MaxResults": "

The maximum number of rules to return in the response. This currently ranges from 1 to 100.

", + "ListConfigurationPoliciesRequest$MaxResults": "

The maximum number of results that's returned by ListConfigurationPolicies in each page of the response. When this parameter is used, ListConfigurationPolicies returns the specified number of results in a single page and a NextToken response element. You can see the remaining results of the initial request by sending another ListConfigurationPolicies request with the returned NextToken value. A valid range for MaxResults is between 1 and 100.

", + "ListConfigurationPolicyAssociationsRequest$MaxResults": "

The maximum number of results that's returned by ListConfigurationPolicies in each page of the response. When this parameter is used, ListConfigurationPolicyAssociations returns the specified number of results in a single page and a NextToken response element. You can see the remaining results of the initial request by sending another ListConfigurationPolicyAssociations request with the returned NextToken value. A valid range for MaxResults is between 1 and 100.

", "ListEnabledProductsForImportRequest$MaxResults": "

The maximum number of items to return in the response.

", "ListFindingAggregatorsRequest$MaxResults": "

The maximum number of results to return. This operation currently only returns a single result.

", "ListSecurityControlDefinitionsRequest$MaxResults": "

An optional parameter that limits the total results of the API response to the specified number. If this parameter isn't provided in the request, the results include the first 25 security controls that apply to the specified standard. The results also include a NextToken parameter that you can use in a subsequent API call to get the next 25 controls. This repeats until all controls for the standard are returned.

", @@ -6042,6 +6212,10 @@ "GetInsightsResponse$NextToken": "

The pagination token to use to request the next page of results.

", "ListAutomationRulesRequest$NextToken": "

A token to specify where to start paginating the response. This is the NextToken from a previously truncated response. On your first call to the ListAutomationRules API, set the value of this parameter to NULL.

", "ListAutomationRulesResponse$NextToken": "

A pagination token for the response.

", + "ListConfigurationPoliciesRequest$NextToken": "

The NextToken value that's returned from a previous paginated ListConfigurationPolicies request where MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the NextToken value. This value is null when there are no more results to return.

", + "ListConfigurationPoliciesResponse$NextToken": "

The NextToken value to include in the next ListConfigurationPolicies request. When the results of a ListConfigurationPolicies request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", + "ListConfigurationPolicyAssociationsRequest$NextToken": "

The NextToken value that's returned from a previous paginated ListConfigurationPolicyAssociations request where MaxResults was used but the results exceeded the value of that parameter. Pagination continues from the end of the previous response that returned the NextToken value. This value is null when there are no more results to return.

", + "ListConfigurationPolicyAssociationsResponse$NextToken": "

The NextToken value to include in the next ListConfigurationPolicyAssociations request. When the results of a ListConfigurationPolicyAssociations request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", "ListEnabledProductsForImportRequest$NextToken": "

The token that is required for pagination. On your first call to the ListEnabledProductsForImport operation, set the value of this parameter to NULL.

For subsequent calls to the operation, to continue listing data, set the value of this parameter to the value returned from the previous response.

", "ListEnabledProductsForImportResponse$NextToken": "

The pagination token to use to request the next page of results.

", "ListFindingAggregatorsRequest$NextToken": "

The token returned with the previous set of results. Identifies the next set of results to return.

", @@ -6080,6 +6254,7 @@ "AdminAccount$AccountId": "

The Amazon Web Services account identifier of the Security Hub administrator account.

", "ArnList$member": null, "AssociatedStandard$StandardsId": "

The unique identifier of a standard in which a control is enabled. This field consists of the resource portion of the Amazon Resource Name (ARN) returned for a standard in the DescribeStandards API response.

", + "AssociationFilters$ConfigurationPolicyId": "

The ARN or UUID of the configuration policy.

", "AssociationSetDetails$GatewayId": "

The ID of the internet gateway or virtual private gateway.

", "AssociationSetDetails$RouteTableAssociationId": "

The ID of the association.

", "AssociationSetDetails$RouteTableId": "

The ID of the route table.

", @@ -7261,6 +7436,8 @@ "AwsSecurityFinding$Title": "

A finding's title.

In this release, Title is a required property.

", "AwsSecurityFinding$Description": "

A finding's description.

In this release, Description is a required property.

", "AwsSecurityFinding$SourceUrl": "

A URL that links to a page about the current finding in the security findings provider's solution.

", + "AwsSecurityFinding$ProcessedAt": "

An ISO8601-formatted timestamp that indicates when Security Hub received a finding and begins to process it.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", + "AwsSecurityFinding$AwsAccountName": "

The name of the Amazon Web Services account from which a finding was generated.

", "AwsSecurityFindingIdentifier$Id": "

The identifier of the finding that was specified by the finding provider.

", "AwsSecurityFindingIdentifier$ProductArn": "

The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.

", "AwsSnsTopicDetails$KmsMasterKeyId": "

The ID of an Amazon Web Services managed key for Amazon SNS or a customer managed key.

", @@ -7375,6 +7552,13 @@ "CodeVulnerabilitiesFilePath$FileName": "

The name of the file in which the code vulnerability is located.

", "CodeVulnerabilitiesFilePath$FilePath": "

The file path to the code in which the vulnerability is located.

", "Compliance$SecurityControlId": "

The unique identifier of a control across standards. Values for this field typically consist of an Amazon Web Service and a number, such as APIGateway.5.

", + "ConfigurationPolicyAssociationSummary$ConfigurationPolicyId": "

The universally unique identifier (UUID) of the configuration policy.

", + "ConfigurationPolicyAssociationSummary$TargetId": "

The identifier of the target account, organizational unit, or the root.

", + "ConfigurationPolicyAssociationSummary$AssociationStatusMessage": "

The explanation for a FAILED value for AssociationStatus.

", + "ConfigurationPolicySummary$Arn": "

The Amazon Resource Name (ARN) of the configuration policy.

", + "ConfigurationPolicySummary$Id": "

The universally unique identifier (UUID) of the configuration policy.

", + "ConfigurationPolicySummary$Name": "

The name of the configuration policy.

", + "ConfigurationPolicySummary$Description": "

The description of the configuration policy.

", "ContainerDetails$ContainerRuntime": "

The runtime of the container.

", "ContainerDetails$Name": "

The name of the container related to a finding.

", "ContainerDetails$ImageId": "

The identifier of the container image related to a finding.

", @@ -7389,6 +7573,12 @@ "CreateAutomationRuleRequest$RuleName": "

The name of the rule.

", "CreateAutomationRuleRequest$Description": "

A description of the rule.

", "CreateAutomationRuleResponse$RuleArn": "

The Amazon Resource Name (ARN) of the automation rule that you created.

", + "CreateConfigurationPolicyRequest$Name": "

The name of the configuration policy.

", + "CreateConfigurationPolicyRequest$Description": "

The description of the configuration policy.

", + "CreateConfigurationPolicyResponse$Arn": "

The Amazon Resource Name (ARN) of the configuration policy.

", + "CreateConfigurationPolicyResponse$Id": "

The universally unique identifier (UUID) of the configuration policy.

", + "CreateConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "CreateConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "CreateFindingAggregatorRequest$RegionLinkingMode": "

Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.

The selected option also determines how to use the Regions provided in the Regions list.

The options are as follows:

", "CreateFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator. You use the finding aggregator ARN to retrieve details for, update, and stop finding aggregation.

", "CreateFindingAggregatorResponse$FindingAggregationRegion": "

The aggregation Region.

", @@ -7406,6 +7596,7 @@ "DateFilter$End": "

A timestamp that provides the end date for the date filter.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", "DeleteActionTargetRequest$ActionTargetArn": "

The Amazon Resource Name (ARN) of the custom action target to delete.

", "DeleteActionTargetResponse$ActionTargetArn": "

The ARN of the custom action target that was deleted.

", + "DeleteConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", "DeleteFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator to delete. To obtain the ARN, use ListFindingAggregators.

", "DeleteInsightRequest$InsightArn": "

The ARN of the insight to delete.

", "DeleteInsightResponse$InsightArn": "

The ARN of the insight that was deleted.

", @@ -7416,11 +7607,14 @@ "DescribeStandardsControlsRequest$StandardsSubscriptionArn": "

The ARN of a resource that represents your subscription to a supported standard. To get the subscription ARNs of the standards you have enabled, use the GetEnabledStandards operation.

", "DisableImportFindingsForProductRequest$ProductSubscriptionArn": "

The ARN of the integrated product to disable the integration for.

", "DisableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account identifier of the Security Hub administrator account.

", + "DisabledSecurityControlIdentifierList$member": null, "DnsRequestAction$Domain": "

The DNS domain that is associated with the DNS request.

", "DnsRequestAction$Protocol": "

The protocol that was used for the DNS request.

", "EnableImportFindingsForProductRequest$ProductArn": "

The ARN of the product to enable the integration for.

", "EnableImportFindingsForProductResponse$ProductSubscriptionArn": "

The ARN of your subscription to the product to enable integrations for.

", "EnableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account identifier of the account to designate as the Security Hub administrator account.

", + "EnabledSecurityControlIdentifierList$member": null, + "EnabledStandardIdentifierList$member": null, "EnumConfigurationOptions$DefaultValue": "

The Security Hub default value for a control parameter that is an enum.

", "FieldMap$key": null, "FieldMap$value": null, @@ -7439,6 +7633,14 @@ "FirewallPolicyStatelessRuleGroupReferencesDetails$ResourceArn": "

The ARN of the stateless rule group.

", "GeneratorDetails$Name": "

The name of the detector used to identify the code vulnerability.

", "GeneratorDetails$Description": "

The description of the detector used to identify the code vulnerability.

", + "GetConfigurationPolicyAssociationResponse$ConfigurationPolicyId": "

The universally unique identifier (UUID) of a configuration policy. For self-managed behavior, the value is SELF_MANAGED_SECURITY_HUB.

", + "GetConfigurationPolicyAssociationResponse$TargetId": "

The target account ID, organizational unit ID, or the root ID for which the association is retrieved.

", + "GetConfigurationPolicyAssociationResponse$AssociationStatusMessage": "

The explanation for a FAILED value for AssociationStatus.

", + "GetConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "GetConfigurationPolicyResponse$Arn": "

The ARN of the configuration policy.

", + "GetConfigurationPolicyResponse$Id": "

The UUID of the configuration policy.

", + "GetConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "GetConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "GetFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator to return details for. To obtain the ARN, use ListFindingAggregators.

", "GetFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator.

", "GetFindingAggregatorResponse$FindingAggregationRegion": "

The aggregation Region.

", @@ -7505,6 +7707,7 @@ "Note$UpdatedAt": "

The timestamp of when the note was updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be separated by T. For example, 2020-03-22T13:22:13.933Z.

", "NoteUpdate$Text": "

The updated note text.

", "NoteUpdate$UpdatedBy": "

The principal that updated the note.

", + "OrganizationConfiguration$StatusMessage": "

Provides an explanation if the value of Status is equal to FAILED when ConfigurationType is equal to CENTRAL.

", "ParameterDefinition$Description": "

Description of a control parameter.

", "ParameterDefinitions$key": null, "ParameterValue$String": "

A control parameter that is a string.

", @@ -7538,6 +7741,8 @@ "Resource$Id": "

The canonical identifier for the given resource type.

", "Resource$Region": "

The canonical Amazon Web Services external Region name where this resource is located.

", "Resource$ResourceRole": "

Identifies the role of the resource in the finding. A resource is either the actor or target of the finding activity,

", + "Resource$ApplicationName": "

The name of the application that is related to a finding.

", + "Resource$ApplicationArn": "

The Amazon Resource Name (ARN) of the application that is related to a finding.

", "ResourceConflictException$Message": null, "ResourceConflictException$Code": null, "ResourceInUseException$Message": null, @@ -7580,6 +7785,7 @@ "SecurityControl$Title": "

The title of a security control.

", "SecurityControl$Description": "

The description of a security control across standards. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. This parameter doesn't reference a specific standard.

", "SecurityControl$RemediationUrl": "

A link to Security Hub documentation that explains how to remediate a failed finding for a security control.

", + "SecurityControlCustomParameter$SecurityControlId": "

The ID of the security control.

", "SecurityControlDefinition$SecurityControlId": "

The unique identifier of a security control across standards. Values for this field typically consist of an Amazon Web Service name and a number (for example, APIGateway.3). This parameter differs from SecurityControlArn, which is a unique Amazon Resource Name (ARN) assigned to a control. The ARN references the security control ID (for example, arn:aws:securityhub:eu-central-1:123456789012:security-control/APIGateway.3).

", "SecurityControlDefinition$Title": "

The title of a security control.

", "SecurityControlDefinition$Description": "

The description of a security control across standards. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. This parameter doesn't reference a specific standard.

", @@ -7622,7 +7828,7 @@ "StandardsControlAssociationSummary$StandardsArn": "

The Amazon Resource Name (ARN) of a standard.

", "StandardsControlAssociationSummary$SecurityControlId": "

A unique standard-agnostic identifier for a control. Values for this field typically consist of an Amazon Web Service and a number, such as APIGateway.5. This field doesn't reference a specific standard.

", "StandardsControlAssociationSummary$SecurityControlArn": "

The ARN of a control, such as arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1. This parameter doesn't mention a specific standard.

", - "StandardsControlAssociationSummary$UpdatedReason": "

The reason for updating the control's enablement status in a specified standard.

", + "StandardsControlAssociationSummary$UpdatedReason": "

The reason for updating a control's enablement status in a specified standard.

", "StandardsControlAssociationSummary$StandardsControlTitle": "

The title of a control.

", "StandardsControlAssociationSummary$StandardsControlDescription": "

The description of a control. This typically summarizes how Security Hub evaluates the control and the conditions under which it produces a failed finding. The parameter may reference a specific standard.

", "StandardsControlAssociationUpdate$StandardsArn": "

The Amazon Resource Name (ARN) of the standard in which you want to update the control's enablement status.

", @@ -7636,6 +7842,11 @@ "StandardsSubscription$StandardsArn": "

The ARN of a standard.

", "StandardsSubscriptionArns$member": null, "StandardsSubscriptionRequest$StandardsArn": "

The ARN of the standard that you want to enable. To view the list of available standards and their ARNs, use the DescribeStandards operation.

", + "StartConfigurationPolicyAssociationRequest$ConfigurationPolicyIdentifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "StartConfigurationPolicyAssociationResponse$ConfigurationPolicyId": "

The UUID of the configuration policy.

", + "StartConfigurationPolicyAssociationResponse$TargetId": "

The identifier of the target account, organizational unit, or the organization root with which the configuration is associated.

", + "StartConfigurationPolicyAssociationResponse$AssociationStatusMessage": "

An explanation for a FAILED value for AssociationStatus.

", + "StartConfigurationPolicyDisassociationRequest$ConfigurationPolicyIdentifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", "StatelessCustomPublishMetricActionDimension$Value": "

The value to use for the custom metric dimension.

", "StatusReason$ReasonCode": "

A code that represents a reason for the control status. For the list of status reason codes and their meanings, see Standards-related information in the ASFF in the Security Hub User Guide.

", "StatusReason$Description": "

The corresponding description for the status reason code.

", @@ -7646,6 +7857,9 @@ "StringList$member": null, "StringListConfigurationOptions$Re2Expression": "

An RE2 regular expression that Security Hub uses to validate a user-provided list of strings for a control parameter.

", "StringListConfigurationOptions$ExpressionDescription": "

The description of the RE2 regular expression.

", + "Target$AccountId": "

The Amazon Web Services account ID of the target account.

", + "Target$OrganizationalUnitId": "

The organizational unit ID of the target organizational unit.

", + "Target$RootId": "

The ID of the organization root.

", "Threat$Name": "

The name of the threat.

", "Threat$Severity": "

The severity of the threat.

", "ThreatIntelIndicator$Value": "

The value of a threat intelligence indicator.

", @@ -7655,6 +7869,8 @@ "TypeList$member": null, "UnprocessedAutomationRule$RuleArn": "

The Amazon Resource Name (ARN) for the unprocessed automation rule.

", "UnprocessedAutomationRule$ErrorMessage": "

An error message describing why a request didn't process a specific rule.

", + "UnprocessedConfigurationPolicyAssociation$ErrorCode": "

An HTTP status code that identifies why the configuration policy association failed.

", + "UnprocessedConfigurationPolicyAssociation$ErrorReason": "

A string that identifies why the configuration policy association failed.

", "UnprocessedSecurityControl$SecurityControlId": "

The control (identified with SecurityControlId, SecurityControlArn, or a mix of both parameters) for which a response couldn't be returned.

", "UnprocessedSecurityControl$ErrorReason": "

The reason why the security control was unprocessed.

", "UnprocessedStandardsControlAssociation$ErrorReason": "

The reason why the standard and control association was unprocessed.

", @@ -7665,6 +7881,14 @@ "UpdateAutomationRulesRequestItem$RuleArn": "

The Amazon Resource Name (ARN) for the rule.

", "UpdateAutomationRulesRequestItem$Description": "

A description of the rule.

", "UpdateAutomationRulesRequestItem$RuleName": "

The name of the rule.

", + "UpdateConfigurationPolicyRequest$Identifier": "

The Amazon Resource Name (ARN) or universally unique identifier (UUID) of the configuration policy.

", + "UpdateConfigurationPolicyRequest$Name": "

The name of the configuration policy.

", + "UpdateConfigurationPolicyRequest$Description": "

The description of the configuration policy.

", + "UpdateConfigurationPolicyRequest$UpdatedReason": "

The reason for updating the configuration policy.

", + "UpdateConfigurationPolicyResponse$Arn": "

The ARN of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Id": "

The UUID of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Name": "

The name of the configuration policy.

", + "UpdateConfigurationPolicyResponse$Description": "

The description of the configuration policy.

", "UpdateFindingAggregatorRequest$FindingAggregatorArn": "

The ARN of the finding aggregator. To obtain the ARN, use ListFindingAggregators.

", "UpdateFindingAggregatorRequest$RegionLinkingMode": "

Indicates whether to aggregate findings from all of the available Regions in the current partition. Also determines whether to automatically aggregate findings from new Regions as Security Hub supports them and you opt into them.

The selected option also determines how to use the Regions provided in the Regions list.

The options are as follows:

", "UpdateFindingAggregatorResponse$FindingAggregatorArn": "

The ARN of the finding aggregator.

", @@ -7822,6 +8046,25 @@ "SensitiveDataDetections$Occurrences": "

Details about the sensitive data that was detected.

" } }, + "OrganizationConfiguration": { + "base": "

Provides information about the way an organization is configured in Security Hub.

", + "refs": { + "DescribeOrganizationConfigurationResponse$OrganizationConfiguration": null, + "UpdateOrganizationConfigurationRequest$OrganizationConfiguration": null + } + }, + "OrganizationConfigurationConfigurationType": { + "base": null, + "refs": { + "OrganizationConfiguration$ConfigurationType": "

Indicates whether the organization uses local or central configuration.

If you use local configuration, the Security Hub delegated administrator can set AutoEnable to true and AutoEnableStandards to DEFAULT. This automatically enables Security Hub and default security standards in new organization accounts. These new account settings must be set separately in each Amazon Web Services Region, and settings may be different in each Region.

If you use central configuration, the delegated administrator can create configuration policies. Configuration policies can be used to configure Security Hub, security standards, and security controls in multiple accounts and Regions. If you want new organization accounts to use a specific configuration, you can create a configuration policy and associate it with the root or specific organizational units (OUs). New accounts will inherit the policy from the root or their assigned OU.

" + } + }, + "OrganizationConfigurationStatus": { + "base": null, + "refs": { + "OrganizationConfiguration$Status": "

Describes whether central configuration could be enabled as the ConfigurationType for the organization. If your ConfigurationType is local configuration, then the value of Status is always ENABLED.

" + } + }, "Page": { "base": "

An occurrence of sensitive data in an Adobe Portable Document Format (PDF) file.

", "refs": { @@ -7868,6 +8111,7 @@ "base": null, "refs": { "SecurityControl$Parameters": "

An object that identifies the name of a control parameter, its current value, and whether it has been customized.

", + "SecurityControlCustomParameter$Parameters": "

An object that specifies parameter values for a control in a configuration policy.

", "UpdateSecurityControlRequest$Parameters": "

An object that specifies which security control parameters to update.

" } }, @@ -7883,6 +8127,16 @@ "AwsSecurityFinding$PatchSummary": "

Provides an overview of the patch compliance status for an instance against a selected compliance standard.

" } }, + "Policy": { + "base": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "refs": { + "CreateConfigurationPolicyRequest$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "CreateConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the request included a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If the request included a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "GetConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the policy includes a list of security controls that are enabled, Security Hub disables all other controls (including newly released controls). If the policy includes a list of security controls that are disabled, Security Hub enables all other controls (including newly released controls).

", + "UpdateConfigurationPolicyRequest$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

When updating a configuration policy, provide a complete list of standards that you want to enable and a complete list of controls that you want to enable or disable. The updated configuration replaces the current configuration.

", + "UpdateConfigurationPolicyResponse$ConfigurationPolicy": "

An object that defines how Security Hub is configured. It includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If the request included a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If the request included a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

" + } + }, "PortProbeAction": { "base": "

Provided if ActionType is PORT_PROBE. It provides details about the attempted port probe that was detected.

", "refs": { @@ -8318,6 +8572,18 @@ "SecurityControls$member": null } }, + "SecurityControlCustomParameter": { + "base": "

A list of security controls and control parameter values that are included in a configuration policy.

", + "refs": { + "SecurityControlCustomParametersList$member": null + } + }, + "SecurityControlCustomParametersList": { + "base": null, + "refs": { + "SecurityControlsConfiguration$SecurityControlCustomParameters": "

A list of security controls and control parameter values that are included in a configuration policy.

" + } + }, "SecurityControlDefinition": { "base": "

Provides metadata for a security control, including its unique standard-agnostic identifier, title, description, severity, availability in Amazon Web Services Regions, and a link to remediation steps.

", "refs": { @@ -8355,12 +8621,24 @@ "BatchGetSecurityControlsResponse$SecurityControls": "

An array that returns the identifier, Amazon Resource Name (ARN), and other details about a security control. The same information is returned whether the request includes SecurityControlId or SecurityControlArn.

" } }, + "SecurityControlsConfiguration": { + "base": "

An object that defines which security controls are enabled in an Security Hub configuration policy. The enablement status of a control is aligned across all of the enabled standards in an account.

", + "refs": { + "SecurityHubPolicy$SecurityControlsConfiguration": "

An object that defines which security controls are enabled in the configuration policy. The enablement status of a control is aligned across all of the enabled standards in an account.

" + } + }, "SecurityGroups": { "base": null, "refs": { "AwsElbv2LoadBalancerDetails$SecurityGroups": "

The IDs of the security groups for the load balancer.

" } }, + "SecurityHubPolicy": { + "base": "

An object that defines how Security Hub is configured. The configuration policy includes whether Security Hub is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub enables all other controls (including newly released controls).

", + "refs": { + "Policy$SecurityHub": "

The Amazon Web Service that the configuration policy applies to.

" + } + }, "SensitiveDataDetections": { "base": "

The list of detected instances of sensitive data.

", "refs": { @@ -8589,6 +8867,26 @@ "GetEnabledStandardsResponse$StandardsSubscriptions": "

The list of StandardsSubscriptions objects that include information about the enabled standards.

" } }, + "StartConfigurationPolicyAssociationRequest": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyAssociationResponse": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyDisassociationRequest": { + "base": null, + "refs": { + } + }, + "StartConfigurationPolicyDisassociationResponse": { + "base": null, + "refs": { + } + }, "StatelessCustomActionDefinition": { "base": "

The definition of a custom action that can be used for stateless packet handling.

", "refs": { @@ -8654,7 +8952,7 @@ "base": null, "refs": { "AutomationRulesFindingFilters$ProductArn": "

The Amazon Resource Name (ARN) for a third-party product that generated a finding in Security Hub.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", - "AutomationRulesFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", + "AutomationRulesFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", "AutomationRulesFindingFilters$Id": "

The product-specific identifier for a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$GeneratorId": "

The identifier for the solution-specific component that generated a finding.

Array Members: Minimum number of 1 item. Maximum number of 100 items.

", "AutomationRulesFindingFilters$Type": "

One or more finding types in the format of namespace/category/classifier that classify a finding. For a list of namespaces, classifiers, and categories, see Types taxonomy for ASFF in the Security Hub User Guide.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", @@ -8678,8 +8976,11 @@ "AutomationRulesFindingFilters$RelatedFindingsId": "

The product-generated identifier for a related finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$NoteText": "

The text of a user-defined note that's added to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AutomationRulesFindingFilters$NoteUpdatedBy": "

The principal that created a note.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$ResourceApplicationArn": "

The Amazon Resource Name (ARN) of the application that is related to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$ResourceApplicationName": "

The name of the application that is related to a finding.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", + "AutomationRulesFindingFilters$AwsAccountName": "

The name of the Amazon Web Services account in which a finding was generated.

Array Members: Minimum number of 1 item. Maximum number of 20 items.

", "AwsSecurityFindingFilters$ProductArn": "

The ARN generated by Security Hub that uniquely identifies a third-party company (security findings provider) after this provider's product (solution that generates findings) is registered with Security Hub.

", - "AwsSecurityFindingFilters$AwsAccountId": "

The Amazon Web Services account ID that a finding is generated in.

", + "AwsSecurityFindingFilters$AwsAccountId": "

The Amazon Web Services account ID in which a finding is generated.

", "AwsSecurityFindingFilters$Id": "

The security findings provider-specific identifier for a finding.

", "AwsSecurityFindingFilters$GeneratorId": "

The identifier for the solution-specific component (a discrete unit of logic) that generated a finding. In various security findings providers' solutions, this generator can be called a rule, a check, a detector, a plugin, etc.

", "AwsSecurityFindingFilters$Region": "

The Region from which the finding was generated.

", @@ -8745,7 +9046,10 @@ "AwsSecurityFindingFilters$VulnerabilitiesExploitAvailable": "

Indicates whether a software vulnerability in your environment has a known exploit. You can filter findings by this field only if you use Security Hub and Amazon Inspector.

", "AwsSecurityFindingFilters$VulnerabilitiesFixAvailable": "

Indicates whether a vulnerability is fixed in a newer version of the affected software packages. You can filter findings by this field only if you use Security Hub and Amazon Inspector.

", "AwsSecurityFindingFilters$ComplianceSecurityControlParametersName": "

The name of a security control parameter.

", - "AwsSecurityFindingFilters$ComplianceSecurityControlParametersValue": "

The current value of a security control parameter.

" + "AwsSecurityFindingFilters$ComplianceSecurityControlParametersValue": "

The current value of a security control parameter.

", + "AwsSecurityFindingFilters$AwsAccountName": "

The name of the Amazon Web Services account in which a finding is generated.

", + "AwsSecurityFindingFilters$ResourceApplicationName": "

The name of the application that is related to a finding.

", + "AwsSecurityFindingFilters$ResourceApplicationArn": "

The ARN of the application that is related to a finding.

" } }, "StringList": { @@ -8820,7 +9124,8 @@ "TagMap": { "base": null, "refs": { - "CreateAutomationRuleRequest$Tags": "

User-defined tags that help you label the purpose of a rule.

", + "CreateAutomationRuleRequest$Tags": "

User-defined tags associated with an automation rule.

", + "CreateConfigurationPolicyRequest$Tags": "

User-defined tags associated with a configuration policy. For more information, see Tagging Security Hub resources in the Security Hub user guide.

", "EnableSecurityHubRequest$Tags": "

The tags to add to the hub resource when you enable Security Hub.

", "ListTagsForResourceResponse$Tags": "

The tags associated with a resource.

", "TagResourceRequest$Tags": "

The tags to add to the resource. You can add up to 50 tags at a time. The tag keys can be no longer than 128 characters. The tag values can be no longer than 256 characters.

" @@ -8842,6 +9147,23 @@ "TagMap$value": null } }, + "Target": { + "base": "

The target account, organizational unit, or the root that is associated with an Security Hub configuration. The configuration can be a configuration policy or self-managed behavior.

", + "refs": { + "ConfigurationPolicyAssociation$Target": "

The target account, organizational unit, or the root.

", + "GetConfigurationPolicyAssociationRequest$Target": "

The target account ID, organizational unit ID, or the root ID to retrieve the association for.

", + "StartConfigurationPolicyAssociationRequest$Target": "

The identifier of the target account, organizational unit, or the root to associate with the specified configuration.

", + "StartConfigurationPolicyDisassociationRequest$Target": "

The identifier of the target account, organizational unit, or the root to disassociate from the specified configuration.

" + } + }, + "TargetType": { + "base": null, + "refs": { + "ConfigurationPolicyAssociationSummary$TargetType": "

Specifies whether the target is an Amazon Web Services account, organizational unit, or the root.

", + "GetConfigurationPolicyAssociationResponse$TargetType": "

Specifies whether the target is an Amazon Web Services account, organizational unit, or the organization root.

", + "StartConfigurationPolicyAssociationResponse$TargetType": "

Indicates whether the target is an Amazon Web Services account, organizational unit, or the organization root.

" + } + }, "Threat": { "base": "

Provides information about the threat detected in a security finding and the file paths that were affected by the threat.

", "refs": { @@ -8885,7 +9207,14 @@ "AutomationRulesConfig$UpdatedAt": "

A timestamp that indicates when the rule was most recently updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AutomationRulesMetadata$CreatedAt": "

A timestamp that indicates when the rule was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AutomationRulesMetadata$UpdatedAt": "

A timestamp that indicates when the rule was most recently updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", + "ConfigurationPolicyAssociationSummary$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "ConfigurationPolicySummary$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "CreateConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "CreateConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

", "FindingHistoryRecord$UpdateTime": "

An ISO 8601-formatted timestamp that indicates when Security Hub processed the updated finding record.

A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

", + "GetConfigurationPolicyAssociationResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "GetConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "GetConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

", "GetFindingHistoryRequest$StartTime": "

An ISO 8601-formatted timestamp that indicates the start time of the requested finding history. A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

If you provide values for both StartTime and EndTime, Security Hub returns finding history for the specified time period. If you provide a value for StartTime but not for EndTime, Security Hub returns finding history from the StartTime to the time at which the API is called. If you provide a value for EndTime but not for StartTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the EndTime. If you provide neither StartTime nor EndTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results, and the maximum time period is limited to 90 days.

", "GetFindingHistoryRequest$EndTime": "

An ISO 8601-formatted timestamp that indicates the end time of the requested finding history. A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot contain spaces, and date and time should be separated by T. For more information, see RFC 3339 section 5.6, Internet Date/Time Format.

If you provide values for both StartTime and EndTime, Security Hub returns finding history for the specified time period. If you provide a value for StartTime but not for EndTime, Security Hub returns finding history from the StartTime to the time at which the API is called. If you provide a value for EndTime but not for StartTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the EndTime. If you provide neither StartTime nor EndTime, Security Hub returns finding history from the CreatedAt timestamp of the finding to the time at which the API is called. In all of these scenarios, the response is limited to 100 results, and the maximum time period is limited to 90 days.

", "Invitation$InvitedAt": "

The timestamp of when the invitation was sent.

", @@ -8893,7 +9222,10 @@ "Member$UpdatedAt": "

The timestamp for the date and time when the member account was updated.

", "StandardsControl$ControlStatusUpdatedAt": "

The date and time that the status of the security standard control was most recently updated.

", "StandardsControlAssociationDetail$UpdatedAt": "

The time at which the enablement status of the control in the specified standard was last updated.

", - "StandardsControlAssociationSummary$UpdatedAt": "

The last time that a control's enablement status in a specified standard was updated.

" + "StandardsControlAssociationSummary$UpdatedAt": "

The last time that a control's enablement status in a specified standard was updated.

", + "StartConfigurationPolicyAssociationResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy association was last updated.

", + "UpdateConfigurationPolicyResponse$UpdatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was last updated.

", + "UpdateConfigurationPolicyResponse$CreatedAt": "

The date and time, in UTC and ISO 8601 format, that the configuration policy was created.

" } }, "TypeList": { @@ -8922,6 +9254,18 @@ "BatchUpdateAutomationRulesResponse$UnprocessedAutomationRules": "

A list of objects containing RuleArn, ErrorCode, and ErrorMessage. This parameter tells you which automation rules the request didn't update and why.

" } }, + "UnprocessedConfigurationPolicyAssociation": { + "base": "

An array of configuration policy associations, one for each configuration policy association identifier, that was specified in a BatchGetConfigurationPolicyAssociations request but couldn’t be processed due to an error.

", + "refs": { + "UnprocessedConfigurationPolicyAssociationList$member": null + } + }, + "UnprocessedConfigurationPolicyAssociationList": { + "base": null, + "refs": { + "BatchGetConfigurationPolicyAssociationsResponse$UnprocessedConfigurationPolicyAssociations": "

An array of configuration policy associations, one for each configuration policy association identifier, that was specified in the request but couldn’t be processed due to an error.

" + } + }, "UnprocessedErrorCode": { "base": null, "refs": { @@ -8998,6 +9342,16 @@ "BatchUpdateAutomationRulesRequest$UpdateAutomationRulesRequestItems": "

An array of ARNs for the rules that are to be updated. Optionally, you can also include RuleStatus and RuleOrder.

" } }, + "UpdateConfigurationPolicyRequest": { + "base": null, + "refs": { + } + }, + "UpdateConfigurationPolicyResponse": { + "base": null, + "refs": { + } + }, "UpdateFindingAggregatorRequest": { "base": null, "refs": { diff --git a/models/apis/securityhub/2018-10-26/examples-1.json b/models/apis/securityhub/2018-10-26/examples-1.json index 2ad7f578c95..c11e5f0618e 100644 --- a/models/apis/securityhub/2018-10-26/examples-1.json +++ b/models/apis/securityhub/2018-10-26/examples-1.json @@ -208,6 +208,57 @@ "title": "To update one ore more automation rules" } ], + "BatchGetConfigurationPolicyAssociations": [ + { + "input": { + "ConfigurationPolicyAssociationIdentifiers": [ + { + "Target": { + "AccountId": "111122223333" + } + }, + { + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + } + ] + }, + "output": { + "ConfigurationPolicyAssociations": [ + { + "AssociationStatus": "SUCCESS", + "AssociationStatusMessage": "This field is only populated for a failed association", + "AssociationType": "INHERITED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "UnprocessedConfigurationPolicyAssociations": [ + { + "ConfigurationPolicyAssociationIdentifiers": { + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + }, + "ErrorCode": "400", + "ErrorReason": "You do not have sufficient access to perform this action." + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about configuration associations for a batch of target accounts, organizational units, or the root.", + "id": "to-get-configuration-associations-for-a-batch-of-targets-1695178953302", + "title": "To get configuration associations for a batch of targets" + } + ], "BatchGetSecurityControls": [ { "input": { @@ -607,6 +658,85 @@ "title": "To create an automation rule" } ], + "CreateConfigurationPolicy": [ + { + "input": { + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "Description": "Configuration policy for testing FSBP and CIS", + "Name": "TestConfigurationPolicy" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation creates a configuration policy in Security Hub.", + "id": "to-create-a-configuration-policy-1695172470099", + "title": "To create a configuration policy" + } + ], "CreateFindingAggregator": [ { "input": { @@ -741,6 +871,22 @@ "title": "To delete a custom action target" } ], + "DeleteConfigurationPolicy": [ + { + "input": { + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation deletes the specified configuration policy.", + "id": "to-delete-a-configuration-policy-1695174614062", + "title": "To delete a configuration policy" + } + ], "DeleteFindingAggregator": [ { "input": { @@ -877,9 +1023,13 @@ "input": { }, "output": { - "AutoEnable": true, - "AutoEnableStandards": "DEFAULT", - "MemberAccountLimitReached": true + "AutoEnable": false, + "AutoEnableStandards": "NONE", + "MemberAccountLimitReached": false, + "OrganizationConfiguration": { + "ConfigurationType": "CENTRAL", + "Status": "ENABLED" + } }, "comments": { "input": { @@ -887,9 +1037,9 @@ "output": { } }, - "description": "The following example returns details about the way in which AWS Organizations is configured for a Security Hub account that belongs to an organization. Only a Security Hub administrator account can call this operation.", - "id": "to-get-information-about-organizations-configuration-1676059786304", - "title": "To get information about Organizations configuration" + "description": "This operation provides information about the way your organization is configured in Security Hub. Only a Security Hub administrator account can invoke this operation.", + "id": "to-get-information-about-organization-configuration-1676059786304", + "title": "To get information about organization configuration" } ], "DescribeProducts": [ @@ -1178,6 +1328,84 @@ "title": "To get details about the Security Hub administrator account" } ], + "GetConfigurationPolicy": [ + { + "input": { + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 14 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about the specified configuration policy.", + "id": "to-get-details-about-a-configuration-policy-1695173701103", + "title": "To get details about a configuration policy" + } + ], + "GetConfigurationPolicyAssociation": [ + { + "input": { + "Target": { + "AccountId": "111122223333" + } + }, + "output": { + "AssociationStatus": "FAILED", + "AssociationStatusMessage": "Configuration Policy a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 couldn’t be applied to account 111122223333 in us-east-1 Region. Retry your request.", + "AssociationType": "INHERITED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides details about configuration associations for a specific target account, organizational unit, or the root.", + "id": "to-get-details-about-a-configuration-association-1695177816371", + "title": "To get details about a configuration association" + } + ], "GetEnabledStandards": [ { "input": { @@ -1626,6 +1854,69 @@ "title": "To list automation rules" } ], + "ListConfigurationPolicies": [ + { + "input": { + "MaxResults": 1, + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf" + }, + "output": { + "ConfigurationPolicySummaries": [ + { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Description": "Configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "ServiceEnabled": true, + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOfvw3o2JqjI86QDxef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation provides a list of your configuration policies, including metadata for each policy.", + "id": "to-view-a-list-of-configuration-policies-1695173268602", + "title": "To view a list of configuration policies" + } + ], + "ListConfigurationPolicyAssociations": [ + { + "input": { + "Filters": { + "AssociationType": "APPLIED" + }, + "MaxResults": 1, + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf" + }, + "output": { + "ConfigurationPolicyAssociationSummaries": [ + { + "AssociationStatus": "PENDING", + "AssociationType": "APPLIED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "123456789012", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + } + ], + "NextToken": "U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOfvw3o2JqjI86QDxef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation lists all of the associations between targets and configuration policies or self-managed behavior. Targets can include accounts, organizational units, or the root.", + "id": "to-list-configuration-associations-1695177309791", + "title": "To list configuration associations" + } + ], "ListEnabledProductsForImport": [ { "output": { @@ -1870,6 +2161,53 @@ "title": "To get a list of tags for a resource" } ], + "StartConfigurationPolicyAssociation": [ + { + "input": { + "ConfigurationPolicyIdentifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Target": { + "AccountId": "111122223333" + } + }, + "output": { + "AssociationStatus": "SUCCESS", + "AssociationStatusMessage": "This field is populated only if the association fails", + "AssociationType": "APPLIED", + "ConfigurationPolicyId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "TargetId": "111122223333", + "TargetType": "ACCOUNT", + "UpdatedAt": "2023-01-11T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation associates a configuration policy or self-managed behavior with the target account, organizational unit, or the root.", + "id": "to-associate-a-configuration-with-a-target-1695176455638", + "title": "To associate a configuration with a target" + } + ], + "StartConfigurationPolicyDisassociation": [ + { + "input": { + "ConfigurationPolicyIdentifier": "SELF_MANAGED_SECURITY_HUB", + "Target": { + "RootId": "r-f6g7h8i9j0example" + } + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation disassociates a configuration policy or self-managed behavior from the target account, organizational unit, or the root.", + "id": "to-disassociate-a-configuration-from-a-target-1695177176748", + "title": "To disassociate a configuration from a target" + } + ], "TagResource": [ { "input": { @@ -1927,6 +2265,89 @@ "title": "To update the name and description of a custom action target" } ], + "UpdateConfigurationPolicy": [ + { + "input": { + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1", + "CloudWatch.2" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 21 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "Description": "Updated configuration policy for testing FSBP and CIS", + "Identifier": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedReason": "Enabling ACM.2" + }, + "output": { + "Arn": "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "ConfigurationPolicy": { + "SecurityHub": { + "EnabledStandardIdentifiers": [ + "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", + "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0" + ], + "SecurityControlsConfiguration": { + "DisabledSecurityControlIdentifiers": [ + "CloudWatch.1", + "CloudWatch.2" + ], + "SecurityControlCustomParameters": [ + { + "Parameters": { + "daysToExpiration": { + "Value": { + "Integer": 21 + }, + "ValueType": "CUSTOM" + } + }, + "SecurityControlId": "ACM.1" + } + ] + }, + "ServiceEnabled": true + } + }, + "CreatedAt": "2023-01-11T06:17:17.154Z", + "Description": "Updated configuration policy for testing FSBP and CIS", + "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", + "Name": "TestConfigurationPolicy", + "UpdatedAt": "2023-01-12T06:17:17.154Z" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation updates the specified configuration policy.", + "id": "to-update-a-configuration-policy-1695174120555", + "title": "To update a configuration policy" + } + ], "UpdateFindingAggregator": [ { "input": { @@ -1991,7 +2412,11 @@ "UpdateOrganizationConfiguration": [ { "input": { - "AutoEnable": true + "AutoEnable": false, + "AutoEnableStandards": "NONE", + "OrganizationConfiguration": { + "ConfigurationType": "CENTRAL" + } }, "comments": { "input": { @@ -1999,7 +2424,7 @@ "output": { } }, - "description": "The following example updates the configuration for an organization so that Security Hub is automatically activated for new member accounts. Only the Security Hub administrator account can call this operation.", + "description": "This operation updates the way your organization is configured in Security Hub. Only a Security Hub administrator account can invoke this operation.", "id": "to-update-organization-configuration-1678911630846", "title": "To update organization configuration" } diff --git a/models/apis/securityhub/2018-10-26/paginators-1.json b/models/apis/securityhub/2018-10-26/paginators-1.json index 3f4a6fdbaa8..520c3b68e51 100644 --- a/models/apis/securityhub/2018-10-26/paginators-1.json +++ b/models/apis/securityhub/2018-10-26/paginators-1.json @@ -48,6 +48,18 @@ "limit_key": "MaxResults", "result_key": "Insights" }, + "ListConfigurationPolicies": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ConfigurationPolicySummaries" + }, + "ListConfigurationPolicyAssociations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults", + "result_key": "ConfigurationPolicyAssociationSummaries" + }, "ListEnabledProductsForImport": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/transcribe/2017-10-26/api-2.json b/models/apis/transcribe/2017-10-26/api-2.json index b8fa17cf3d1..1aac5ec86ee 100644 --- a/models/apis/transcribe/2017-10-26/api-2.json +++ b/models/apis/transcribe/2017-10-26/api-2.json @@ -130,6 +130,19 @@ {"shape":"InternalFailureException"} ] }, + "DeleteMedicalScribeJob":{ + "name":"DeleteMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteMedicalScribeJobRequest"}, + "errors":[ + {"shape":"LimitExceededException"}, + {"shape":"BadRequestException"}, + {"shape":"InternalFailureException"} + ] + }, "DeleteMedicalTranscriptionJob":{ "name":"DeleteMedicalTranscriptionJob", "http":{ @@ -243,6 +256,21 @@ {"shape":"NotFoundException"} ] }, + "GetMedicalScribeJob":{ + "name":"GetMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetMedicalScribeJobRequest"}, + "output":{"shape":"GetMedicalScribeJobResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"}, + {"shape":"NotFoundException"} + ] + }, "GetMedicalTranscriptionJob":{ "name":"GetMedicalTranscriptionJob", "http":{ @@ -360,6 +388,20 @@ {"shape":"InternalFailureException"} ] }, + "ListMedicalScribeJobs":{ + "name":"ListMedicalScribeJobs", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListMedicalScribeJobsRequest"}, + "output":{"shape":"ListMedicalScribeJobsResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"} + ] + }, "ListMedicalTranscriptionJobs":{ "name":"ListMedicalTranscriptionJobs", "http":{ @@ -460,6 +502,21 @@ {"shape":"ConflictException"} ] }, + "StartMedicalScribeJob":{ + "name":"StartMedicalScribeJob", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"StartMedicalScribeJobRequest"}, + "output":{"shape":"StartMedicalScribeJobResponse"}, + "errors":[ + {"shape":"BadRequestException"}, + {"shape":"LimitExceededException"}, + {"shape":"InternalFailureException"}, + {"shape":"ConflictException"} + ] + }, "StartMedicalTranscriptionJob":{ "name":"StartMedicalTranscriptionJob", "http":{ @@ -898,6 +955,13 @@ "ModelName":{"shape":"ModelName"} } }, + "DeleteMedicalScribeJobRequest":{ + "type":"structure", + "required":["MedicalScribeJobName"], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"} + } + }, "DeleteMedicalTranscriptionJobRequest":{ "type":"structure", "required":["MedicalTranscriptionJobName"], @@ -974,6 +1038,19 @@ "CallAnalyticsJob":{"shape":"CallAnalyticsJob"} } }, + "GetMedicalScribeJobRequest":{ + "type":"structure", + "required":["MedicalScribeJobName"], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"} + } + }, + "GetMedicalScribeJobResponse":{ + "type":"structure", + "members":{ + "MedicalScribeJob":{"shape":"MedicalScribeJob"} + } + }, "GetMedicalTranscriptionJobRequest":{ "type":"structure", "required":["MedicalTranscriptionJobName"], @@ -1317,6 +1394,23 @@ "Models":{"shape":"Models"} } }, + "ListMedicalScribeJobsRequest":{ + "type":"structure", + "members":{ + "Status":{"shape":"MedicalScribeJobStatus"}, + "JobNameContains":{"shape":"TranscriptionJobName"}, + "NextToken":{"shape":"NextToken"}, + "MaxResults":{"shape":"MaxResults"} + } + }, + "ListMedicalScribeJobsResponse":{ + "type":"structure", + "members":{ + "Status":{"shape":"MedicalScribeJobStatus"}, + "NextToken":{"shape":"NextToken"}, + "MedicalScribeJobSummaries":{"shape":"MedicalScribeJobSummaries"} + } + }, "ListMedicalTranscriptionJobsRequest":{ "type":"structure", "members":{ @@ -1463,6 +1557,104 @@ "max":48000, "min":16000 }, + "MedicalScribeChannelDefinition":{ + "type":"structure", + "required":[ + "ChannelId", + "ParticipantRole" + ], + "members":{ + "ChannelId":{"shape":"MedicalScribeChannelId"}, + "ParticipantRole":{"shape":"MedicalScribeParticipantRole"} + } + }, + "MedicalScribeChannelDefinitions":{ + "type":"list", + "member":{"shape":"MedicalScribeChannelDefinition"}, + "max":2, + "min":2 + }, + "MedicalScribeChannelId":{ + "type":"integer", + "max":1, + "min":0 + }, + "MedicalScribeJob":{ + "type":"structure", + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "MedicalScribeJobStatus":{"shape":"MedicalScribeJobStatus"}, + "LanguageCode":{"shape":"MedicalScribeLanguageCode"}, + "Media":{"shape":"Media"}, + "MedicalScribeOutput":{"shape":"MedicalScribeOutput"}, + "StartTime":{"shape":"DateTime"}, + "CreationTime":{"shape":"DateTime"}, + "CompletionTime":{"shape":"DateTime"}, + "FailureReason":{"shape":"FailureReason"}, + "Settings":{"shape":"MedicalScribeSettings"}, + "DataAccessRoleArn":{"shape":"DataAccessRoleArn"}, + "ChannelDefinitions":{"shape":"MedicalScribeChannelDefinitions"}, + "Tags":{"shape":"TagList"} + } + }, + "MedicalScribeJobStatus":{ + "type":"string", + "enum":[ + "QUEUED", + "IN_PROGRESS", + "FAILED", + "COMPLETED" + ] + }, + "MedicalScribeJobSummaries":{ + "type":"list", + "member":{"shape":"MedicalScribeJobSummary"} + }, + "MedicalScribeJobSummary":{ + "type":"structure", + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "CreationTime":{"shape":"DateTime"}, + "StartTime":{"shape":"DateTime"}, + "CompletionTime":{"shape":"DateTime"}, + "LanguageCode":{"shape":"MedicalScribeLanguageCode"}, + "MedicalScribeJobStatus":{"shape":"MedicalScribeJobStatus"}, + "FailureReason":{"shape":"FailureReason"} + } + }, + "MedicalScribeLanguageCode":{ + "type":"string", + "enum":["en-US"] + }, + "MedicalScribeOutput":{ + "type":"structure", + "required":[ + "TranscriptFileUri", + "ClinicalDocumentUri" + ], + "members":{ + "TranscriptFileUri":{"shape":"Uri"}, + "ClinicalDocumentUri":{"shape":"Uri"} + } + }, + "MedicalScribeParticipantRole":{ + "type":"string", + "enum":[ + "PATIENT", + "CLINICIAN" + ] + }, + "MedicalScribeSettings":{ + "type":"structure", + "members":{ + "ShowSpeakerLabels":{"shape":"Boolean"}, + "MaxSpeakerLabels":{"shape":"MaxSpeakers"}, + "ChannelIdentification":{"shape":"Boolean"}, + "VocabularyName":{"shape":"VocabularyName"}, + "VocabularyFilterName":{"shape":"VocabularyFilterName"}, + "VocabularyFilterMethod":{"shape":"VocabularyFilterMethod"} + } + }, "MedicalTranscript":{ "type":"structure", "members":{ @@ -1736,6 +1928,33 @@ "CallAnalyticsJob":{"shape":"CallAnalyticsJob"} } }, + "StartMedicalScribeJobRequest":{ + "type":"structure", + "required":[ + "MedicalScribeJobName", + "Media", + "OutputBucketName", + "DataAccessRoleArn", + "Settings" + ], + "members":{ + "MedicalScribeJobName":{"shape":"TranscriptionJobName"}, + "Media":{"shape":"Media"}, + "OutputBucketName":{"shape":"OutputBucketName"}, + "OutputEncryptionKMSKeyId":{"shape":"KMSKeyId"}, + "KMSEncryptionContext":{"shape":"KMSEncryptionContextMap"}, + "DataAccessRoleArn":{"shape":"DataAccessRoleArn"}, + "Settings":{"shape":"MedicalScribeSettings"}, + "ChannelDefinitions":{"shape":"MedicalScribeChannelDefinitions"}, + "Tags":{"shape":"TagList"} + } + }, + "StartMedicalScribeJobResponse":{ + "type":"structure", + "members":{ + "MedicalScribeJob":{"shape":"MedicalScribeJob"} + } + }, "StartMedicalTranscriptionJobRequest":{ "type":"structure", "required":[ diff --git a/models/apis/transcribe/2017-10-26/docs-2.json b/models/apis/transcribe/2017-10-26/docs-2.json index 9ddf6745206..95c13abeffb 100644 --- a/models/apis/transcribe/2017-10-26/docs-2.json +++ b/models/apis/transcribe/2017-10-26/docs-2.json @@ -10,6 +10,7 @@ "DeleteCallAnalyticsCategory": "

Deletes a Call Analytics category. To use this operation, specify the name of the category you want to delete using CategoryName. Category names are case sensitive.

", "DeleteCallAnalyticsJob": "

Deletes a Call Analytics job. To use this operation, specify the name of the job you want to delete using CallAnalyticsJobName. Job names are case sensitive.

", "DeleteLanguageModel": "

Deletes a custom language model. To use this operation, specify the name of the language model you want to delete using ModelName. custom language model names are case sensitive.

", + "DeleteMedicalScribeJob": "

Deletes a Medical Scribe job. To use this operation, specify the name of the job you want to delete using MedicalScribeJobName. Job names are case sensitive.

", "DeleteMedicalTranscriptionJob": "

Deletes a medical transcription job. To use this operation, specify the name of the job you want to delete using MedicalTranscriptionJobName. Job names are case sensitive.

", "DeleteMedicalVocabulary": "

Deletes a custom medical vocabulary. To use this operation, specify the name of the custom vocabulary you want to delete using VocabularyName. Custom vocabulary names are case sensitive.

", "DeleteTranscriptionJob": "

Deletes a transcription job. To use this operation, specify the name of the job you want to delete using TranscriptionJobName. Job names are case sensitive.

", @@ -18,6 +19,7 @@ "DescribeLanguageModel": "

Provides information about the specified custom language model.

This operation also shows if the base language model that you used to create your custom language model has been updated. If Amazon Transcribe has updated the base model, you can create a new custom language model using the updated base model.

If you tried to create a new custom language model and the request wasn't successful, you can use DescribeLanguageModel to help identify the reason for this failure.

", "GetCallAnalyticsCategory": "

Provides information about the specified Call Analytics category.

To get a list of your Call Analytics categories, use the operation.

", "GetCallAnalyticsJob": "

Provides information about the specified Call Analytics job.

To view the job's status, refer to CallAnalyticsJobStatus. If the status is COMPLETED, the job is finished. You can find your completed transcript at the URI specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

If you enabled personally identifiable information (PII) redaction, the redacted transcript appears at the location specified in RedactedTranscriptFileUri.

If you chose to redact the audio in your media file, you can find your redacted media file at the location specified in RedactedMediaFileUri.

To get a list of your Call Analytics jobs, use the operation.

", + "GetMedicalScribeJob": "

Provides information about the specified Medical Scribe job.

To view the status of the specified medical transcription job, check the MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in MedicalScribeOutput. If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

To get a list of your Medical Scribe jobs, use the operation.

", "GetMedicalTranscriptionJob": "

Provides information about the specified medical transcription job.

To view the status of the specified medical transcription job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

To get a list of your medical transcription jobs, use the operation.

", "GetMedicalVocabulary": "

Provides information about the specified custom medical vocabulary.

To view the status of the specified custom medical vocabulary, check the VocabularyState field. If the status is READY, your custom vocabulary is available to use. If the status is FAILED, FailureReason provides details on why your vocabulary failed.

To get a list of your custom medical vocabularies, use the operation.

", "GetTranscriptionJob": "

Provides information about the specified transcription job.

To view the status of the specified transcription job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished. You can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

If you enabled content redaction, the redacted transcript can be found at the location specified in RedactedTranscriptFileUri.

To get a list of your transcription jobs, use the operation.

", @@ -26,6 +28,7 @@ "ListCallAnalyticsCategories": "

Provides a list of Call Analytics categories, including all rules that make up each category.

To get detailed information about a specific Call Analytics category, use the operation.

", "ListCallAnalyticsJobs": "

Provides a list of Call Analytics jobs that match the specified criteria. If no criteria are specified, all Call Analytics jobs are returned.

To get detailed information about a specific Call Analytics job, use the operation.

", "ListLanguageModels": "

Provides a list of custom language models that match the specified criteria. If no criteria are specified, all custom language models are returned.

To get detailed information about a specific custom language model, use the operation.

", + "ListMedicalScribeJobs": "

Provides a list of Medical Scribe jobs that match the specified criteria. If no criteria are specified, all Medical Scribe jobs are returned.

To get detailed information about a specific Medical Scribe job, use the operation.

", "ListMedicalTranscriptionJobs": "

Provides a list of medical transcription jobs that match the specified criteria. If no criteria are specified, all medical transcription jobs are returned.

To get detailed information about a specific medical transcription job, use the operation.

", "ListMedicalVocabularies": "

Provides a list of custom medical vocabularies that match the specified criteria. If no criteria are specified, all custom medical vocabularies are returned.

To get detailed information about a specific custom medical vocabulary, use the operation.

", "ListTagsForResource": "

Lists all tags associated with the specified transcription job, vocabulary, model, or resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", @@ -33,8 +36,9 @@ "ListVocabularies": "

Provides a list of custom vocabularies that match the specified criteria. If no criteria are specified, all custom vocabularies are returned.

To get detailed information about a specific custom vocabulary, use the operation.

", "ListVocabularyFilters": "

Provides a list of custom vocabulary filters that match the specified criteria. If no criteria are specified, all custom vocabularies are returned.

To get detailed information about a specific custom vocabulary filter, use the operation.

", "StartCallAnalyticsJob": "

Transcribes the audio from a customer service call and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Call Analytics provides you with call characteristics, call summarization, speaker sentiment, and optional redaction of your text transcript and your audio file. You can also apply custom categories to flag specified conditions. To learn more about these features and insights, refer to Analyzing call center audio with Call Analytics.

If you want to apply categories to your Call Analytics job, you must create them before submitting your job request. Categories cannot be retroactively applied to a job. To create a new category, use the operation. To learn more about Call Analytics categories, see Creating categories for post-call transcriptions and Creating categories for real-time transcriptions.

To make a StartCallAnalyticsJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

Note that job queuing is enabled by default for Call Analytics jobs.

You must include the following parameters in your StartCallAnalyticsJob request:

With Call Analytics, you can redact the audio contained in your media file by including RedactedMediaFileUri, instead of MediaFileUri, to specify the location of your input audio. If you choose to redact your audio, you can find your redacted media at the location specified in the RedactedMediaFileUri field of your response.

", - "StartMedicalTranscriptionJob": "

Transcribes the audio from a medical dictation or conversation and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Amazon Transcribe Medical provides you with a robust medical vocabulary and, optionally, content identification, which adds flags to personal health information (PHI). To learn more about these features, refer to How Amazon Transcribe Medical works.

To make a StartMedicalTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

", - "StartTranscriptionJob": "

Transcribes the audio from a media file and applies any additional Request Parameters you choose to include in your request.

To make a StartTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartTranscriptionJob request:

", + "StartMedicalScribeJob": "

Transcribes patient-clinician conversations and generates clinical notes.

Amazon Web Services HealthScribe automatically provides rich conversation transcripts, identifies speaker roles, classifies dialogues, extracts medical terms, and generates preliminary clinical notes. To learn more about these features, refer to Amazon Web Services HealthScribe.

To make a StartMedicalScribeJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

", + "StartMedicalTranscriptionJob": "

Transcribes the audio from a medical dictation or conversation and applies any additional Request Parameters you choose to include in your request.

In addition to many standard transcription features, Amazon Transcribe Medical provides you with a robust medical vocabulary and, optionally, content identification, which adds flags to personal health information (PHI). To learn more about these features, refer to How Amazon Transcribe Medical works.

To make a StartMedicalTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartMedicalTranscriptionJob request:

", + "StartTranscriptionJob": "

Transcribes the audio from a media file and applies any additional Request Parameters you choose to include in your request.

To make a StartTranscriptionJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.

You must include the following parameters in your StartTranscriptionJob request:

", "TagResource": "

Adds one or more custom tags, each in the form of a key:value pair, to the specified resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "UntagResource": "

Removes the specified tags from the specified Amazon Transcribe resource.

If you include UntagResource in your request, you must also include ResourceArn and TagKeys.

", "UpdateCallAnalyticsCategory": "

Updates the specified Call Analytics category with new rules. Note that the UpdateCallAnalyticsCategory operation overwrites all existing rules contained in the specified category. You cannot append additional rules onto an existing category.

To create a new category, see .

", @@ -71,13 +75,15 @@ "InterruptionFilter$Negate": "

Set to TRUE to flag speech that does not contain interruptions. Set to FALSE to flag speech that contains interruptions.

", "JobExecutionSettings$AllowDeferredExecution": "

Makes it possible to enable job queuing when your concurrent request limit is exceeded. When AllowDeferredExecution is set to true, transcription job requests are placed in a queue until the number of jobs falls below the concurrent request limit. If AllowDeferredExecution is set to false and the number of transcription job requests exceed the concurrent request limit, you get a LimitExceededException error.

If you include AllowDeferredExecution in your request, you must also include DataAccessRoleArn.

", "LanguageModel$UpgradeAvailability": "

Shows if a more current base model is available for use with the specified custom language model.

If false, your custom language model is using the most up-to-date base model.

If true, there is a newer base model available than the one your language model is using.

Note that to update a base model, you must recreate the custom language model using the new base model. Base model upgrades for existing custom language models are not supported.

", - "MedicalTranscriptionSetting$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

You can't include ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Partitioning speakers (diarization).

", - "MedicalTranscriptionSetting$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Transcribing multi-channel audio.

", + "MedicalScribeSettings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your Medical Scribe output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "MedicalScribeSettings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

For more information, see Transcribing multi-channel audio.

", + "MedicalTranscriptionSetting$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "MedicalTranscriptionSetting$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

For more information, see Transcribing multi-channel audio.

", "MedicalTranscriptionSetting$ShowAlternatives": "

To include alternative transcriptions within your transcription output, include ShowAlternatives in your transcription request.

If you include ShowAlternatives, you must also include MaxAlternatives, which is the maximum number of alternative transcriptions you want Amazon Transcribe Medical to generate.

For more information, see Alternative transcriptions.

", "NonTalkTimeFilter$Negate": "

Set to TRUE to flag periods of speech. Set to FALSE to flag periods of silence

", "SentimentFilter$Negate": "

Set to TRUE to flag the sentiments that you didn't include in your request. Set to FALSE to flag the sentiments that you specified in your request.

", - "Settings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Partitioning speakers (diarization).

", - "Settings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

You can't include both ShowSpeakerLabels and ChannelIdentification in the same request. Including both parameters returns a BadRequestException.

For more information, see Transcribing multi-channel audio.

", + "Settings$ShowSpeakerLabels": "

Enables speaker partitioning (diarization) in your transcription output. Speaker partitioning labels the speech from individual speakers in your media file.

If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels.

For more information, see Partitioning speakers (diarization).

", + "Settings$ChannelIdentification": "

Enables channel identification in multi-channel audio.

Channel identification transcribes the audio on each channel independently, then appends the output for each channel into one transcript.

For more information, see Transcribing multi-channel audio.

", "Settings$ShowAlternatives": "

To include alternative transcriptions within your transcription output, include ShowAlternatives in your transcription request.

If you have multi-channel audio and do not enable channel identification, your audio is transcribed in a continuous manner and your transcript does not separate the speech by channel.

If you include ShowAlternatives, you must also include MaxAlternatives, which is the maximum number of alternative transcriptions you want Amazon Transcribe to generate.

For more information, see Alternative transcriptions.

", "StartTranscriptionJobRequest$IdentifyLanguage": "

Enables automatic language identification in your transcription job request. Use this parameter if your media file contains only one language. If your media contains multiple languages, use IdentifyMultipleLanguages instead.

If you include IdentifyLanguage, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your media file. Including LanguageOptions restricts IdentifyLanguage to only the language options that you specify, which can improve transcription accuracy.

If you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter to your automatic language identification request, include LanguageIdSettings with the relevant sub-parameters (VocabularyName, LanguageModelName, and VocabularyFilterName). If you include LanguageIdSettings, also include LanguageOptions.

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", "StartTranscriptionJobRequest$IdentifyMultipleLanguages": "

Enables automatic multi-language identification in your transcription job request. Use this parameter if your media file contains more than one language. If your media contains only one language, use IdentifyLanguage instead.

If you include IdentifyMultipleLanguages, you can optionally include a list of language codes, using LanguageOptions, that you think may be present in your media file. Including LanguageOptions restricts IdentifyLanguage to only the language options that you specify, which can improve transcription accuracy.

If you want to apply a custom vocabulary or a custom vocabulary filter to your automatic language identification request, include LanguageIdSettings with the relevant sub-parameters (VocabularyName and VocabularyFilterName). If you include LanguageIdSettings, also include LanguageOptions.

Note that you must include one of LanguageCode, IdentifyLanguage, or IdentifyMultipleLanguages in your request. If you include more than one of these parameters, your transcription job fails.

", @@ -94,7 +100,7 @@ "refs": { "CreateLanguageModelRequest$LanguageCode": "

The language code that represents the language of your model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that US English (en-US) is the only language supported with Amazon Transcribe Medical.

A custom language model can only be used to transcribe files in the same language as the model. For example, if you create a custom language model using US English (en-US), you can only apply this model to files that contain English audio.

", "CreateLanguageModelResponse$LanguageCode": "

The language code you selected for your custom language model.

", - "LanguageModel$LanguageCode": "

The language code used to create your custom language model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that U.S. English (en-US) is the only language supported with Amazon Transcribe Medical.

" + "LanguageModel$LanguageCode": "

The language code used to create your custom language model. Each custom language model must contain terms in only one language, and the language you select for your custom language model must match the language of your training and tuning data.

For a list of supported languages and their associated language codes, refer to the Supported languages table. Note that US English (en-US) is the only language supported with Amazon Transcribe Medical.

" } }, "CallAnalyticsJob": { @@ -127,7 +133,7 @@ "refs": { "CallAnalyticsJob$CallAnalyticsJobStatus": "

Provides the status of the specified Call Analytics job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.

", "CallAnalyticsJobSummary$CallAnalyticsJobStatus": "

Provides the status of your Call Analytics job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.

", - "ListCallAnalyticsJobsRequest$Status": "

Returns only Call Analytics jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all Call Analytics jobs are returned.

", + "ListCallAnalyticsJobsRequest$Status": "

Returns only Call Analytics jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all Call Analytics jobs are returned.

", "ListCallAnalyticsJobsResponse$Status": "

Lists all Call Analytics jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

" } }, @@ -193,10 +199,10 @@ } }, "ContentRedaction": { - "base": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType.

", + "base": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact.

", "refs": { "CallAnalyticsJobSettings$ContentRedaction": null, - "StartTranscriptionJobRequest$ContentRedaction": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType.

", + "StartTranscriptionJobRequest$ContentRedaction": "

Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.

", "TranscriptionJob$ContentRedaction": "

Indicates whether redaction was enabled in your transcript.

", "TranscriptionJobSummary$ContentRedaction": "

The content redaction settings of the transcription job.

" } @@ -259,7 +265,9 @@ "CreateVocabularyRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "InputDataConfig$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "JobExecutionSettings$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin. For more information, see IAM ARNs.

Note that if you include DataAccessRoleArn in your request, you must also include AllowDeferredExecution.

", + "MedicalScribeJob$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files, write to the output bucket, and use your KMS key if supplied. If the role that you specify doesn’t have the appropriate permissions your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "StartCallAnalyticsJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", + "StartMedicalScribeJobRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files, write to the output bucket, and use your KMS key if supplied. If the role that you specify doesn’t have the appropriate permissions your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "UpdateVocabularyFilterRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary filter). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

", "UpdateVocabularyRequest$DataAccessRoleArn": "

The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files (in this case, your custom vocabulary). If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.

IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.

For more information, see IAM ARNs.

" } @@ -283,6 +291,12 @@ "GetVocabularyResponse$LastModifiedTime": "

The date and time the specified custom vocabulary was last modified.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", "LanguageModel$CreateTime": "

The date and time the specified custom language model was created.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", "LanguageModel$LastModifiedTime": "

The date and time the specified custom language model was last modified.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$StartTime": "

The date and time your Medical Scribe job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$CreationTime": "

The date and time the specified Medical Scribe job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJob$CompletionTime": "

The date and time the specified Medical Scribe job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$CreationTime": "

The date and time the specified Medical Scribe job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$StartTime": "

The date and time your Medical Scribe job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", + "MedicalScribeJobSummary$CompletionTime": "

The date and time the specified Medical Scribe job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$StartTime": "

The date and time the specified medical transcription job began processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$CreationTime": "

The date and time the specified medical transcription job request was made.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.

", "MedicalTranscriptionJob$CompletionTime": "

The date and time the specified medical transcription job finished processing.

Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:33:13.922000-07:00 represents a transcription job that started processing at 12:33 PM UTC-7 on May 4, 2022.

", @@ -327,6 +341,11 @@ "refs": { } }, + "DeleteMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, "DeleteMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -372,16 +391,18 @@ "base": null, "refs": { "BadRequestException$Message": null, - "CallAnalyticsJob$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.

The FailureReason field contains one of the following values:

", + "CallAnalyticsJob$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.

The FailureReason field contains one of the following values:

", "CallAnalyticsJobSummary$FailureReason": "

If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job failed. See also: Common Errors.

", "CreateMedicalVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the medical transcription job request failed. See also: Common Errors.

", "CreateVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom vocabulary request failed. See also: Common Errors.

", "GetMedicalVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom medical vocabulary request failed. See also: Common Errors.

", "GetVocabularyResponse$FailureReason": "

If VocabularyState is FAILED, FailureReason contains information about why the custom vocabulary request failed. See also: Common Errors.

", "LanguageModel$FailureReason": "

If ModelStatus is FAILED, FailureReason contains information about why the custom language model request failed. See also: Common Errors.

", - "MedicalTranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

", + "MedicalScribeJob$FailureReason": "

If MedicalScribeJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", + "MedicalScribeJobSummary$FailureReason": "

If MedicalScribeJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", + "MedicalTranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

", "MedicalTranscriptionJobSummary$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

", - "TranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

", + "TranscriptionJob$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job request failed.

The FailureReason field contains one of the following values:

", "TranscriptionJobSummary$FailureReason": "

If TranscriptionJobStatus is FAILED, FailureReason contains information about why the transcription job failed. See also: Common Errors.

" } }, @@ -405,6 +426,16 @@ "refs": { } }, + "GetMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, + "GetMedicalScribeJobResponse": { + "base": null, + "refs": { + } + }, "GetMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -500,6 +531,7 @@ "KMSEncryptionContextMap": { "base": null, "refs": { + "StartMedicalScribeJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

", "StartMedicalTranscriptionJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

", "StartTranscriptionJobRequest$KMSEncryptionContext": "

A map of plain text, non-secret key:value pairs, known as encryption context pairs, that provide an added layer of security for your data. For more information, see KMS encryption context and Asymmetric keys in KMS.

" } @@ -507,15 +539,16 @@ "KMSKeyId": { "base": null, "refs": { - "StartCallAnalyticsJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Call Analytics output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", - "StartMedicalTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your medical transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", - "StartTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you don't specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

" + "StartCallAnalyticsJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Call Analytics output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", + "StartMedicalScribeJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your Medical Scribe output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

Note that the role specified in the DataAccessRoleArn request parameter must have permission to use the specified KMS key.

", + "StartMedicalTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your medical transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

", + "StartTranscriptionJobRequest$OutputEncryptionKMSKeyId": "

The KMS key you want to use to encrypt your transcription output.

If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:

  1. Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use an alias for the KMS key ID. For example, alias/ExampleAlias.

  3. Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  4. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:

  1. Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  2. Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.

If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).

If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.

Note that the role making the request must have permission to use the specified KMS key.

" } }, "LanguageCode": { "base": null, "refs": { - "CallAnalyticsJob$LanguageCode": "

The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.

If you don't know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.

", + "CallAnalyticsJob$LanguageCode": "

The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.

If you do not know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.

", "CallAnalyticsJobSummary$LanguageCode": "

The language code used to create your Call Analytics transcription.

", "CreateMedicalVocabularyRequest$LanguageCode": "

The language code that represents the language of the entries in your custom vocabulary. US English (en-US) is the only language supported with Amazon Transcribe Medical.

", "CreateMedicalVocabularyResponse$LanguageCode": "

The language code you selected for your custom medical vocabulary. US English (en-US) is the only language supported with Amazon Transcribe Medical.

", @@ -621,6 +654,16 @@ "refs": { } }, + "ListMedicalScribeJobsRequest": { + "base": null, + "refs": { + } + }, + "ListMedicalScribeJobsResponse": { + "base": null, + "refs": { + } + }, "ListMedicalTranscriptionJobsRequest": { "base": null, "refs": { @@ -691,29 +734,33 @@ "MaxResults": { "base": null, "refs": { - "ListCallAnalyticsCategoriesRequest$MaxResults": "

The maximum number of Call Analytics categories to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListCallAnalyticsJobsRequest$MaxResults": "

The maximum number of Call Analytics jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListLanguageModelsRequest$MaxResults": "

The maximum number of custom language models to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListMedicalTranscriptionJobsRequest$MaxResults": "

The maximum number of medical transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListMedicalVocabulariesRequest$MaxResults": "

The maximum number of custom medical vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListTranscriptionJobsRequest$MaxResults": "

The maximum number of transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListVocabulariesRequest$MaxResults": "

The maximum number of custom vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

", - "ListVocabularyFiltersRequest$MaxResults": "

The maximum number of custom vocabulary filters to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you don't specify a value, a default of 5 is used.

" + "ListCallAnalyticsCategoriesRequest$MaxResults": "

The maximum number of Call Analytics categories to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListCallAnalyticsJobsRequest$MaxResults": "

The maximum number of Call Analytics jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListLanguageModelsRequest$MaxResults": "

The maximum number of custom language models to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalScribeJobsRequest$MaxResults": "

The maximum number of Medical Scribe jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalTranscriptionJobsRequest$MaxResults": "

The maximum number of medical transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListMedicalVocabulariesRequest$MaxResults": "

The maximum number of custom medical vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListTranscriptionJobsRequest$MaxResults": "

The maximum number of transcription jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListVocabulariesRequest$MaxResults": "

The maximum number of custom vocabularies to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

", + "ListVocabularyFiltersRequest$MaxResults": "

The maximum number of custom vocabulary filters to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.

" } }, "MaxSpeakers": { "base": null, "refs": { + "MedicalScribeSettings$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

", "MedicalTranscriptionSetting$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

", "Settings$MaxSpeakerLabels": "

Specify the maximum number of speakers you want to partition in your media.

Note that if your media contains more speakers than the specified number, multiple speakers are treated as a single speaker.

If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels field to true.

" } }, "Media": { - "base": "

Describes the Amazon S3 location of the media file you want to use in your request.

For information on supported media formats, refer to the MediaFormat parameter or the Media formats section in the Amazon S3 Developer Guide.

", + "base": "

Describes the Amazon S3 location of the media file you want to use in your request.

For information on supported media formats, refer to the MediaFormat parameter or the Media formats section in the Amazon S3 Developer Guide.

", "refs": { "CallAnalyticsJob$Media": "

Provides the Amazon S3 location of the media file you used in your Call Analytics request.

", + "MedicalScribeJob$Media": null, "MedicalTranscriptionJob$Media": null, "StartCallAnalyticsJobRequest$Media": "

Describes the Amazon S3 location of the media file you want to use in your Call Analytics request.

", + "StartMedicalScribeJobRequest$Media": null, "StartMedicalTranscriptionJobRequest$Media": null, "StartTranscriptionJobRequest$Media": "

Describes the Amazon S3 location of the media file you want to use in your request.

", "TranscriptionJob$Media": "

Provides the Amazon S3 location of the media file you used in your request.

" @@ -733,7 +780,7 @@ "base": null, "refs": { "CallAnalyticsJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

", - "StartTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you don't specify the media sample rate, Amazon Transcribe determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe. If there's a mismatch between the value that you specify and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz and let Amazon Transcribe determine the sample rate.

", + "StartTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you do not specify the media sample rate, Amazon Transcribe determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe. If there's a mismatch between the value that you specify and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz and let Amazon Transcribe determine the sample rate.

", "TranscriptionJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

" } }, @@ -749,7 +796,80 @@ "base": null, "refs": { "MedicalTranscriptionJob$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

", - "StartMedicalTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you don't specify the media sample rate, Amazon Transcribe Medical determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe Medical; if there's a mismatch between the value that you specify and the value detected, your job fails. Therefore, in most cases, it's advised to omit MediaSampleRateHertz and let Amazon Transcribe Medical determine the sample rate.

" + "StartMedicalTranscriptionJobRequest$MediaSampleRateHertz": "

The sample rate, in hertz, of the audio track in your input media file.

If you do not specify the media sample rate, Amazon Transcribe Medical determines it for you. If you specify the sample rate, it must match the rate detected by Amazon Transcribe Medical; if there's a mismatch between the value that you specify and the value detected, your job fails. Therefore, in most cases, it's advised to omit MediaSampleRateHertz and let Amazon Transcribe Medical determine the sample rate.

" + } + }, + "MedicalScribeChannelDefinition": { + "base": "

Indicates which speaker is on which channel. The options are CLINICIAN and PATIENT

", + "refs": { + "MedicalScribeChannelDefinitions$member": null + } + }, + "MedicalScribeChannelDefinitions": { + "base": null, + "refs": { + "MedicalScribeJob$ChannelDefinitions": "

Makes it possible to specify which speaker is on which channel. For example, if the clinician is the first participant to speak, you would set ChannelId of the first ChannelDefinition in the list to 0 (to indicate the first channel) and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). Then you would set the ChannelId of the second ChannelDefinition in the list to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to indicate that it's the patient speaking).

", + "StartMedicalScribeJobRequest$ChannelDefinitions": "

Makes it possible to specify which speaker is on which channel. For example, if the clinician is the first participant to speak, you would set ChannelId of the first ChannelDefinition in the list to 0 (to indicate the first channel) and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). Then you would set the ChannelId of the second ChannelDefinition in the list to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to indicate that it's the patient speaking).

" + } + }, + "MedicalScribeChannelId": { + "base": null, + "refs": { + "MedicalScribeChannelDefinition$ChannelId": "

Specify the audio channel you want to define.

" + } + }, + "MedicalScribeJob": { + "base": "

Provides detailed information about a Medical Scribe job.

To view the status of the specified Medical Scribe job, check the MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished and you can find the results at the locations specified in MedicalScribeOutput. If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

", + "refs": { + "GetMedicalScribeJobResponse$MedicalScribeJob": "

Provides detailed information about the specified Medical Scribe job, including job status and, if applicable, failure reason

", + "StartMedicalScribeJobResponse$MedicalScribeJob": "

Provides detailed information about the current Medical Scribe job, including job status and, if applicable, failure reason.

" + } + }, + "MedicalScribeJobStatus": { + "base": null, + "refs": { + "ListMedicalScribeJobsRequest$Status": "

Returns only Medical Scribe jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all Medical Scribe jobs are returned.

", + "ListMedicalScribeJobsResponse$Status": "

Lists all Medical Scribe jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", + "MedicalScribeJob$MedicalScribeJobStatus": "

Provides the status of the specified Medical Scribe job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in MedicalScribeOutput If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

", + "MedicalScribeJobSummary$MedicalScribeJobStatus": "

Provides the status of the specified Medical Scribe job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in MedicalScribeOutput If the status is FAILED, FailureReason provides details on why your Medical Scribe job failed.

" + } + }, + "MedicalScribeJobSummaries": { + "base": null, + "refs": { + "ListMedicalScribeJobsResponse$MedicalScribeJobSummaries": "

Provides a summary of information about each result.

" + } + }, + "MedicalScribeJobSummary": { + "base": "

Provides detailed information about a specific Medical Scribe job.

", + "refs": { + "MedicalScribeJobSummaries$member": null + } + }, + "MedicalScribeLanguageCode": { + "base": null, + "refs": { + "MedicalScribeJob$LanguageCode": "

The language code used to create your Medical Scribe job. US English (en-US) is the only supported language for Medical Scribe jobs.

", + "MedicalScribeJobSummary$LanguageCode": "

The language code used to create your Medical Scribe job. US English (en-US) is the only supported language for Medical Scribe jobs.

" + } + }, + "MedicalScribeOutput": { + "base": "

The location of the output of your Medical Scribe job. ClinicalDocumentUri holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds the Amazon S3 URI for the Transcript.

", + "refs": { + "MedicalScribeJob$MedicalScribeOutput": "

The location of the output of your Medical Scribe job. ClinicalDocumentUri holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds the Amazon S3 URI for the Transcript.

" + } + }, + "MedicalScribeParticipantRole": { + "base": null, + "refs": { + "MedicalScribeChannelDefinition$ParticipantRole": "

Specify the participant that you want to flag. The options are CLINICIAN and PATIENT

" + } + }, + "MedicalScribeSettings": { + "base": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

", + "refs": { + "MedicalScribeJob$Settings": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

", + "StartMedicalScribeJobRequest$Settings": "

Makes it possible to control how your Medical Scribe job is processed using a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions are not set. One and only one of ChannelIdentification and ShowSpeakerLabels must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName is set.

" } }, "MedicalTranscript": { @@ -787,15 +907,15 @@ "ModelName": { "base": null, "refs": { - "CallAnalyticsJobSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", + "CallAnalyticsJobSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", "CreateLanguageModelRequest$ModelName": "

A unique name, chosen by you, for your custom language model.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new custom language model with the same name as an existing custom language model, you get a ConflictException error.

", "CreateLanguageModelResponse$ModelName": "

The name of your custom language model.

", "DeleteLanguageModelRequest$ModelName": "

The name of the custom language model you want to delete. Model names are case sensitive.

", "DescribeLanguageModelRequest$ModelName": "

The name of the custom language model you want information about. Model names are case sensitive.

", - "LanguageIdSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", + "LanguageIdSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

", "LanguageModel$ModelName": "

A unique name, chosen by you, for your custom language model.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

", "ListLanguageModelsRequest$NameContains": "

Returns only the custom language models that contain the specified string. The search is not case sensitive.

", - "ModelSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

" + "ModelSettings$LanguageModelName": "

The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.

The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.

" } }, "ModelSettings": { @@ -811,7 +931,7 @@ "refs": { "CreateLanguageModelResponse$ModelStatus": "

The status of your custom language model. When the status displays as COMPLETED, your model is ready to use.

", "LanguageModel$ModelStatus": "

The status of the specified custom language model. When the status displays as COMPLETED the model is ready for use.

", - "ListLanguageModelsRequest$StatusEquals": "

Returns only custom language models with the specified status. Language models are ordered by creation date, with the newest model first. If you don't include StatusEquals, all custom language models are returned.

" + "ListLanguageModelsRequest$StatusEquals": "

Returns only custom language models with the specified status. Language models are ordered by creation date, with the newest model first. If you do not include StatusEquals, all custom language models are returned.

" } }, "Models": { @@ -829,6 +949,8 @@ "ListCallAnalyticsJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListLanguageModelsRequest$NextToken": "

If your ListLanguageModels request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListLanguageModelsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", + "ListMedicalScribeJobsRequest$NextToken": "

If your ListMedicalScribeJobs request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", + "ListMedicalScribeJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalTranscriptionJobsRequest$NextToken": "

If your ListMedicalTranscriptionJobs request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalTranscriptionJobsResponse$NextToken": "

If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.

", "ListMedicalVocabulariesRequest$NextToken": "

If your ListMedicalVocabularies request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.

", @@ -863,8 +985,9 @@ "OutputBucketName": { "base": null, "refs": { + "StartMedicalScribeJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your Medical Scribe output stored. Do not include the S3:// prefix of the specified bucket.

Note that the role specified in the DataAccessRoleArn request parameter must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

", "StartMedicalTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your medical transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

", - "StartTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

If you don't specify OutputBucketName, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

" + "StartTranscriptionJobRequest$OutputBucketName": "

The name of the Amazon S3 bucket where you want your transcription output stored. Do not include the S3:// prefix of the specified bucket.

If you want your output to go to a sub-folder of this bucket, specify it using the OutputKey parameter; OutputBucketName only accepts the name of a bucket.

For example, if you want your output stored in S3://DOC-EXAMPLE-BUCKET, set OutputBucketName to DOC-EXAMPLE-BUCKET. However, if you want your output stored in S3://DOC-EXAMPLE-BUCKET/test-files/, set OutputBucketName to DOC-EXAMPLE-BUCKET and OutputKey to test-files/.

Note that Amazon Transcribe must have permission to use the specified location. You can change Amazon S3 permissions using the Amazon Web Services Management Console. See also Permissions Required for IAM User Roles.

If you do not specify OutputBucketName, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

" } }, "OutputKey": { @@ -921,7 +1044,7 @@ "PiiEntityTypes": { "base": null, "refs": { - "ContentRedaction$PiiEntityTypes": "

Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL.

" + "ContentRedaction$PiiEntityTypes": "

Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. If you do not include PiiEntityTypes in your request, all PII is redacted.

" } }, "RedactionOutput": { @@ -933,7 +1056,7 @@ "RedactionType": { "base": null, "refs": { - "ContentRedaction$RedactionType": "

Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact.

" + "ContentRedaction$RedactionType": "

Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.

" } }, "RelativeTimeRange": { @@ -1002,6 +1125,16 @@ "refs": { } }, + "StartMedicalScribeJobRequest": { + "base": null, + "refs": { + } + }, + "StartMedicalScribeJobResponse": { + "base": null, + "refs": { + } + }, "StartMedicalTranscriptionJobRequest": { "base": null, "refs": { @@ -1108,7 +1241,9 @@ "CreateVocabularyFilterRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new custom vocabulary filter at the time you create this new vocabulary filter.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "CreateVocabularyRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new custom vocabulary at the time you create this new custom vocabulary.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "ListTagsForResourceResponse$Tags": "

Lists all tags associated with the given transcription job, vocabulary, model, or resource.

", + "MedicalScribeJob$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the Medica Scribe job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "MedicalTranscriptionJob$Tags": "

The tags, each in the form of a key:value pair, assigned to the specified medical transcription job.

", + "StartMedicalScribeJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the Medica Scribe job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "StartMedicalTranscriptionJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new medical transcription job at the time you start this new job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "StartTranscriptionJobRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to a new transcription job at the time you start this new job.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", "TagResourceRequest$Tags": "

Adds one or more custom tags, each in the form of a key:value pair, to the specified resource.

To learn more about using tags with Amazon Transcribe, refer to Tagging resources.

", @@ -1206,14 +1341,20 @@ "TranscriptionJobName": { "base": null, "refs": { + "DeleteMedicalScribeJobRequest$MedicalScribeJobName": "

The name of the Medical Scribe job you want to delete. Job names are case sensitive.

", "DeleteMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

The name of the medical transcription job you want to delete. Job names are case sensitive.

", "DeleteTranscriptionJobRequest$TranscriptionJobName": "

The name of the transcription job you want to delete. Job names are case sensitive.

", + "GetMedicalScribeJobRequest$MedicalScribeJobName": "

The name of the Medical Scribe job you want information about. Job names are case sensitive.

", "GetMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

The name of the medical transcription job you want information about. Job names are case sensitive.

", "GetTranscriptionJobRequest$TranscriptionJobName": "

The name of the transcription job you want information about. Job names are case sensitive.

", + "ListMedicalScribeJobsRequest$JobNameContains": "

Returns only the Medical Scribe jobs that contain the specified string. The search is not case sensitive.

", "ListMedicalTranscriptionJobsRequest$JobNameContains": "

Returns only the medical transcription jobs that contain the specified string. The search is not case sensitive.

", "ListTranscriptionJobsRequest$JobNameContains": "

Returns only the transcription jobs that contain the specified string. The search is not case sensitive.

", + "MedicalScribeJob$MedicalScribeJobName": "

The name of the Medical Scribe job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", + "MedicalScribeJobSummary$MedicalScribeJobName": "

The name of the Medical Scribe job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", "MedicalTranscriptionJob$MedicalTranscriptionJobName": "

The name of the medical transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", "MedicalTranscriptionJobSummary$MedicalTranscriptionJobName": "

The name of the medical transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", + "StartMedicalScribeJobRequest$MedicalScribeJobName": "

A unique name, chosen by you, for your Medical Scribe job.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "StartMedicalTranscriptionJobRequest$MedicalTranscriptionJobName": "

A unique name, chosen by you, for your medical transcription job. The name that you specify is also used as the default name of your transcription output file. If you want to specify a different name for your transcription output, use the OutputKey parameter.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "StartTranscriptionJobRequest$TranscriptionJobName": "

A unique name, chosen by you, for your transcription job. The name that you specify is also used as the default name of your transcription output file. If you want to specify a different name for your transcription output, use the OutputKey parameter.

This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.

", "TranscriptionJob$TranscriptionJobName": "

The name of the transcription job. Job names are case sensitive and must be unique within an Amazon Web Services account.

", @@ -1223,9 +1364,9 @@ "TranscriptionJobStatus": { "base": null, "refs": { - "ListMedicalTranscriptionJobsRequest$Status": "

Returns only medical transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all medical transcription jobs are returned.

", + "ListMedicalTranscriptionJobsRequest$Status": "

Returns only medical transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all medical transcription jobs are returned.

", "ListMedicalTranscriptionJobsResponse$Status": "

Lists all medical transcription jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", - "ListTranscriptionJobsRequest$Status": "

Returns only transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you don't include Status, all transcription jobs are returned.

", + "ListTranscriptionJobsRequest$Status": "

Returns only transcription jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all transcription jobs are returned.

", "ListTranscriptionJobsResponse$Status": "

Lists all transcription jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.

", "MedicalTranscriptionJob$TranscriptionJobStatus": "

Provides the status of the specified medical transcription job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

", "MedicalTranscriptionJobSummary$TranscriptionJobStatus": "

Provides the status of your medical transcription job.

If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.

", @@ -1309,15 +1450,17 @@ "CreateMedicalVocabularyRequest$VocabularyFileUri": "

The Amazon S3 location (URI) of the text file that contains your custom medical vocabulary. The URI must be in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-file.txt

", "CreateVocabularyFilterRequest$VocabularyFilterFileUri": "

The Amazon S3 location of the text file that contains your custom vocabulary filter terms. The URI must be located in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-filter-file.txt

Note that if you include VocabularyFilterFileUri in your request, you cannot use Words; you must choose one or the other.

", "CreateVocabularyRequest$VocabularyFileUri": "

The Amazon S3 location of the text file that contains your custom vocabulary. The URI must be located in the same Amazon Web Services Region as the resource you're calling.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-vocab-file.txt

Note that if you include VocabularyFileUri in your request, you cannot use the Phrases flag; you must choose one or the other.

", - "GetMedicalVocabularyResponse$DownloadUri": "

The S3 location where the specified custom medical vocabulary is stored; use this URI to view or download the custom vocabulary.

", + "GetMedicalVocabularyResponse$DownloadUri": "

The Amazon S3 location where the specified custom medical vocabulary is stored; use this URI to view or download the custom vocabulary.

", "GetVocabularyFilterResponse$DownloadUri": "

The Amazon S3 location where the custom vocabulary filter is stored; use this URI to view or download the custom vocabulary filter.

", - "GetVocabularyResponse$DownloadUri": "

The S3 location where the custom vocabulary is stored; use this URI to view or download the custom vocabulary.

", + "GetVocabularyResponse$DownloadUri": "

The Amazon S3 location where the custom vocabulary is stored; use this URI to view or download the custom vocabulary.

", "InputDataConfig$S3Uri": "

The Amazon S3 location (URI) of the text files you want to use to train your custom language model.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-model-training-data/

", "InputDataConfig$TuningDataS3Uri": "

The Amazon S3 location (URI) of the text files you want to use to tune your custom language model.

Here's an example URI path: s3://DOC-EXAMPLE-BUCKET/my-model-tuning-data/

", "Media$MediaFileUri": "

The Amazon S3 location of the media file you want to transcribe. For example:

Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.

", "Media$RedactedMediaFileUri": "

The Amazon S3 location of the media file you want to redact. For example:

Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.

RedactedMediaFileUri produces a redacted audio file in addition to a redacted transcript. It is only supported for Call Analytics (StartCallAnalyticsJob) transcription requests.

", + "MedicalScribeOutput$TranscriptFileUri": "

Holds the Amazon S3 URI for the Transcript.

", + "MedicalScribeOutput$ClinicalDocumentUri": "

Holds the Amazon S3 URI for the Clinical Document.

", "MedicalTranscript$TranscriptFileUri": "

The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.

Note that this is the Amazon S3 location you specified in your request using the OutputBucketName parameter.

", - "StartCallAnalyticsJobRequest$OutputLocation": "

The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:

  1. s3://DOC-EXAMPLE-BUCKET

  2. s3://DOC-EXAMPLE-BUCKET/my-output-folder/

  3. s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json

Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the CallAnalyticsJobName parameter.

You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId parameter. If you don't specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.

If you don't specify OutputLocation, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

", + "StartCallAnalyticsJobRequest$OutputLocation": "

The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:

  1. s3://DOC-EXAMPLE-BUCKET

  2. s3://DOC-EXAMPLE-BUCKET/my-output-folder/

  3. s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json

Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the CallAnalyticsJobName parameter.

You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId parameter. If you do not specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.

If you do not specify OutputLocation, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.

", "SubtitleFileUris$member": null, "Transcript$TranscriptFileUri": "

The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.

If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.

If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and TranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.

Temporary URIs for service-managed Amazon S3 buckets are only valid for 15 minutes. If you get an AccesDenied error, you can get a new temporary URI by running a GetTranscriptionJob or ListTranscriptionJob request.

", "Transcript$RedactedTranscriptFileUri": "

The Amazon S3 location of your redacted transcript. You can use this URI to access or download your transcript.

If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.

If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and RedactedTranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.

Temporary URIs for service-managed Amazon S3 buckets are only valid for 15 minutes. If you get an AccesDenied error, you can get a new temporary URI by running a GetTranscriptionJob or ListTranscriptionJob request.

", @@ -1343,6 +1486,7 @@ "base": null, "refs": { "CallAnalyticsJobSettings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

", + "MedicalScribeSettings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

", "Settings$VocabularyFilterMethod": "

Specify how you want your custom vocabulary filter applied to your transcript.

To replace words with ***, choose mask.

To delete words, choose remove.

To flag words without changing them, choose tag.

" } }, @@ -1355,8 +1499,9 @@ "DeleteVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want to delete. Custom vocabulary filter names are case sensitive.

", "GetVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want information about. Custom vocabulary filter names are case sensitive.

", "GetVocabularyFilterResponse$VocabularyFilterName": "

The name of the custom vocabulary filter you requested information about.

", - "LanguageIdSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.

The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", + "LanguageIdSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.

The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "ListVocabularyFiltersRequest$NameContains": "

Returns only the custom vocabulary filters that contain the specified string. The search is not case sensitive.

", + "MedicalScribeSettings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to include in your Medical Scribe request. Custom vocabulary filter names are case sensitive.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "Settings$VocabularyFilterName": "

The name of the custom vocabulary filter you want to use in your transcription job request. This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.

", "UpdateVocabularyFilterRequest$VocabularyFilterName": "

The name of the custom vocabulary filter you want to update. Custom vocabulary filter names are case sensitive.

", "UpdateVocabularyFilterResponse$VocabularyFilterName": "

The name of the updated custom vocabulary filter.

", @@ -1389,10 +1534,11 @@ "GetMedicalVocabularyResponse$VocabularyName": "

The name of the custom medical vocabulary you requested information about.

", "GetVocabularyRequest$VocabularyName": "

The name of the custom vocabulary you want information about. Custom vocabulary names are case sensitive.

", "GetVocabularyResponse$VocabularyName": "

The name of the custom vocabulary you requested information about.

", - "LanguageIdSettings$VocabularyName": "

The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.

", + "LanguageIdSettings$VocabularyName": "

The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.

", "ListMedicalVocabulariesRequest$NameContains": "

Returns only the custom medical vocabularies that contain the specified string. The search is not case sensitive.

", "ListVocabulariesRequest$NameContains": "

Returns only the custom vocabularies that contain the specified string. The search is not case sensitive.

", - "MedicalTranscriptionSetting$VocabularyName": "

The name of the custom vocabulary you want to use when processing your medical transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages don't match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch. US English (en-US) is the only valid language for Amazon Transcribe Medical.

", + "MedicalScribeSettings$VocabularyName": "

The name of the custom vocabulary you want to include in your Medical Scribe request. Custom vocabulary names are case sensitive.

", + "MedicalTranscriptionSetting$VocabularyName": "

The name of the custom vocabulary you want to use when processing your medical transcription job. Custom vocabulary names are case sensitive.

The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch. US English (en-US) is the only valid language for Amazon Transcribe Medical.

", "Settings$VocabularyName": "

The name of the custom vocabulary you want to use in your transcription job request. This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account.

", "UpdateMedicalVocabularyRequest$VocabularyName": "

The name of the custom medical vocabulary you want to update. Custom medical vocabulary names are case sensitive.

", "UpdateMedicalVocabularyResponse$VocabularyName": "

The name of the updated custom medical vocabulary.

", @@ -1408,9 +1554,9 @@ "CreateVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", "GetMedicalVocabularyResponse$VocabularyState": "

The processing state of your custom medical vocabulary. If the state is READY, you can use the custom vocabulary in a StartMedicalTranscriptionJob request.

", "GetVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", - "ListMedicalVocabulariesRequest$StateEquals": "

Returns only custom medical vocabularies with the specified state. Custom vocabularies are ordered by creation date, with the newest vocabulary first. If you don't include StateEquals, all custom medical vocabularies are returned.

", + "ListMedicalVocabulariesRequest$StateEquals": "

Returns only custom medical vocabularies with the specified state. Custom vocabularies are ordered by creation date, with the newest vocabulary first. If you do not include StateEquals, all custom medical vocabularies are returned.

", "ListMedicalVocabulariesResponse$Status": "

Lists all custom medical vocabularies that have the status specified in your request. Custom vocabularies are ordered by creation date, with the newest vocabulary first.

", - "ListVocabulariesRequest$StateEquals": "

Returns only custom vocabularies with the specified state. Vocabularies are ordered by creation date, with the newest vocabulary first. If you don't include StateEquals, all custom medical vocabularies are returned.

", + "ListVocabulariesRequest$StateEquals": "

Returns only custom vocabularies with the specified state. Vocabularies are ordered by creation date, with the newest vocabulary first. If you do not include StateEquals, all custom medical vocabularies are returned.

", "ListVocabulariesResponse$Status": "

Lists all custom vocabularies that have the status specified in your request. Vocabularies are ordered by creation date, with the newest vocabulary first.

", "UpdateMedicalVocabularyResponse$VocabularyState": "

The processing state of your custom medical vocabulary. If the state is READY, you can use the custom vocabulary in a StartMedicalTranscriptionJob request.

", "UpdateVocabularyResponse$VocabularyState": "

The processing state of your custom vocabulary. If the state is READY, you can use the custom vocabulary in a StartTranscriptionJob request.

", diff --git a/models/apis/transcribe/2017-10-26/paginators-1.json b/models/apis/transcribe/2017-10-26/paginators-1.json index b3c22720365..2c414fdeaaa 100644 --- a/models/apis/transcribe/2017-10-26/paginators-1.json +++ b/models/apis/transcribe/2017-10-26/paginators-1.json @@ -15,6 +15,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListMedicalScribeJobs": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListMedicalTranscriptionJobs": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/service/appsync/api.go b/service/appsync/api.go index 90271047bab..c576590b848 100644 --- a/service/appsync/api.go +++ b/service/appsync/api.go @@ -2655,6 +2655,95 @@ func (c *AppSync) GetDataSourceWithContext(ctx aws.Context, input *GetDataSource return out, req.Send() } +const opGetDataSourceIntrospection = "GetDataSourceIntrospection" + +// GetDataSourceIntrospectionRequest generates a "aws/request.Request" representing the +// client's request for the GetDataSourceIntrospection 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 GetDataSourceIntrospection for more information on using the GetDataSourceIntrospection +// 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 GetDataSourceIntrospectionRequest method. +// req, resp := client.GetDataSourceIntrospectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSourceIntrospection +func (c *AppSync) GetDataSourceIntrospectionRequest(input *GetDataSourceIntrospectionInput) (req *request.Request, output *GetDataSourceIntrospectionOutput) { + op := &request.Operation{ + Name: opGetDataSourceIntrospection, + HTTPMethod: "GET", + HTTPPath: "/v1/datasources/introspections/{introspectionId}", + } + + if input == nil { + input = &GetDataSourceIntrospectionInput{} + } + + output = &GetDataSourceIntrospectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDataSourceIntrospection API operation for AWS AppSync. +// +// Retrieves the record of an existing introspection. If the retrieval is successful, +// the result of the instrospection will also be returned. If the retrieval +// fails the operation, an error message will be returned instead. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS AppSync's +// API operation GetDataSourceIntrospection for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// The request is not well formed. For example, a value is invalid or a required +// field is missing. Check the field values, and then try again. +// +// - NotFoundException +// The resource specified in the request was not found. Check the resource, +// and then try again. +// +// - InternalFailureException +// An internal AppSync error occurred. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSourceIntrospection +func (c *AppSync) GetDataSourceIntrospection(input *GetDataSourceIntrospectionInput) (*GetDataSourceIntrospectionOutput, error) { + req, out := c.GetDataSourceIntrospectionRequest(input) + return out, req.Send() +} + +// GetDataSourceIntrospectionWithContext is the same as GetDataSourceIntrospection with the addition of +// the ability to pass a context and additional request options. +// +// See GetDataSourceIntrospection 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 *AppSync) GetDataSourceIntrospectionWithContext(ctx aws.Context, input *GetDataSourceIntrospectionInput, opts ...request.Option) (*GetDataSourceIntrospectionOutput, error) { + req, out := c.GetDataSourceIntrospectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDomainName = "GetDomainName" // GetDomainNameRequest generates a "aws/request.Request" representing the @@ -4376,6 +4465,97 @@ func (c *AppSync) ListTypesByAssociationWithContext(ctx aws.Context, input *List return out, req.Send() } +const opStartDataSourceIntrospection = "StartDataSourceIntrospection" + +// StartDataSourceIntrospectionRequest generates a "aws/request.Request" representing the +// client's request for the StartDataSourceIntrospection 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 StartDataSourceIntrospection for more information on using the StartDataSourceIntrospection +// 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 StartDataSourceIntrospectionRequest method. +// req, resp := client.StartDataSourceIntrospectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartDataSourceIntrospection +func (c *AppSync) StartDataSourceIntrospectionRequest(input *StartDataSourceIntrospectionInput) (req *request.Request, output *StartDataSourceIntrospectionOutput) { + op := &request.Operation{ + Name: opStartDataSourceIntrospection, + HTTPMethod: "POST", + HTTPPath: "/v1/datasources/introspections", + } + + if input == nil { + input = &StartDataSourceIntrospectionInput{} + } + + output = &StartDataSourceIntrospectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartDataSourceIntrospection API operation for AWS AppSync. +// +// Creates a new introspection. Returns the introspectionId of the new introspection +// after its creation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS AppSync's +// API operation StartDataSourceIntrospection for usage and error information. +// +// Returned Error Types: +// +// - NotFoundException +// The resource specified in the request was not found. Check the resource, +// and then try again. +// +// - UnauthorizedException +// You aren't authorized to perform this operation. +// +// - InternalFailureException +// An internal AppSync error occurred. Try your request again. +// +// - BadRequestException +// The request is not well formed. For example, a value is invalid or a required +// field is missing. Check the field values, and then try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartDataSourceIntrospection +func (c *AppSync) StartDataSourceIntrospection(input *StartDataSourceIntrospectionInput) (*StartDataSourceIntrospectionOutput, error) { + req, out := c.StartDataSourceIntrospectionRequest(input) + return out, req.Send() +} + +// StartDataSourceIntrospectionWithContext is the same as StartDataSourceIntrospection with the addition of +// the ability to pass a context and additional request options. +// +// See StartDataSourceIntrospection 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 *AppSync) StartDataSourceIntrospectionWithContext(ctx aws.Context, input *StartDataSourceIntrospectionInput, opts ...request.Option) (*StartDataSourceIntrospectionOutput, error) { + req, out := c.StartDataSourceIntrospectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartSchemaCreation = "StartSchemaCreation" // StartSchemaCreationRequest generates a "aws/request.Request" representing the @@ -8704,32 +8884,314 @@ func (s *DataSource) SetLambdaConfig(v *LambdaDataSourceConfig) *DataSource { } // SetName sets the Name field's value. -func (s *DataSource) SetName(v string) *DataSource { +func (s *DataSource) SetName(v string) *DataSource { + s.Name = &v + return s +} + +// SetOpenSearchServiceConfig sets the OpenSearchServiceConfig field's value. +func (s *DataSource) SetOpenSearchServiceConfig(v *OpenSearchServiceDataSourceConfig) *DataSource { + s.OpenSearchServiceConfig = v + return s +} + +// SetRelationalDatabaseConfig sets the RelationalDatabaseConfig field's value. +func (s *DataSource) SetRelationalDatabaseConfig(v *RelationalDatabaseDataSourceConfig) *DataSource { + s.RelationalDatabaseConfig = v + return s +} + +// SetServiceRoleArn sets the ServiceRoleArn field's value. +func (s *DataSource) SetServiceRoleArn(v string) *DataSource { + s.ServiceRoleArn = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSource) SetType(v string) *DataSource { + s.Type = &v + return s +} + +// Contains the introspected data that was retrieved from the data source. +type DataSourceIntrospectionModel struct { + _ struct{} `type:"structure"` + + // The DataSourceIntrospectionModelField object data. + Fields []*DataSourceIntrospectionModelField `locationName:"fields" type:"list"` + + // The array of DataSourceIntrospectionModelIndex objects. + Indexes []*DataSourceIntrospectionModelIndex `locationName:"indexes" type:"list"` + + // The name of the model. For example, this could be the name of a single table + // in a database. + Name *string `locationName:"name" type:"string"` + + // The primary key stored as a DataSourceIntrospectionModelIndex object. + PrimaryKey *DataSourceIntrospectionModelIndex `locationName:"primaryKey" type:"structure"` + + // Contains the output of the SDL that was generated from the introspected types. + // This is controlled by the includeModelsSDL parameter of the GetDataSourceIntrospection + // operation. + Sdl *string `locationName:"sdl" 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 DataSourceIntrospectionModel) 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 DataSourceIntrospectionModel) GoString() string { + return s.String() +} + +// SetFields sets the Fields field's value. +func (s *DataSourceIntrospectionModel) SetFields(v []*DataSourceIntrospectionModelField) *DataSourceIntrospectionModel { + s.Fields = v + return s +} + +// SetIndexes sets the Indexes field's value. +func (s *DataSourceIntrospectionModel) SetIndexes(v []*DataSourceIntrospectionModelIndex) *DataSourceIntrospectionModel { + s.Indexes = v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModel) SetName(v string) *DataSourceIntrospectionModel { + s.Name = &v + return s +} + +// SetPrimaryKey sets the PrimaryKey field's value. +func (s *DataSourceIntrospectionModel) SetPrimaryKey(v *DataSourceIntrospectionModelIndex) *DataSourceIntrospectionModel { + s.PrimaryKey = v + return s +} + +// SetSdl sets the Sdl field's value. +func (s *DataSourceIntrospectionModel) SetSdl(v string) *DataSourceIntrospectionModel { + s.Sdl = &v + return s +} + +// Represents the fields that were retrieved from the introspected data. +type DataSourceIntrospectionModelField struct { + _ struct{} `type:"structure"` + + // The length value of the introspected field. + Length *int64 `locationName:"length" type:"long"` + + // The name of the field that was retrieved from the introspected data. + Name *string `locationName:"name" type:"string"` + + // The DataSourceIntrospectionModelFieldType object data. + Type *DataSourceIntrospectionModelFieldType `locationName:"type" 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 DataSourceIntrospectionModelField) 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 DataSourceIntrospectionModelField) GoString() string { + return s.String() +} + +// SetLength sets the Length field's value. +func (s *DataSourceIntrospectionModelField) SetLength(v int64) *DataSourceIntrospectionModelField { + s.Length = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelField) SetName(v string) *DataSourceIntrospectionModelField { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceIntrospectionModelField) SetType(v *DataSourceIntrospectionModelFieldType) *DataSourceIntrospectionModelField { + s.Type = v + return s +} + +// Represents the type data for each field retrieved from the introspection. +type DataSourceIntrospectionModelFieldType struct { + _ struct{} `type:"structure"` + + // Specifies the classification of data. For example, this could be set to values + // like Scalar or NonNull to indicate a fundamental property of the field. + // + // Valid values include: + // + // * Scalar: Indicates the value is a primitive type (scalar). + // + // * NonNull: Indicates the field cannot be null. + // + // * List: Indicates the field contains a list. + Kind *string `locationName:"kind" type:"string"` + + // The name of the data type that represents the field. For example, String + // is a valid name value. + Name *string `locationName:"name" type:"string"` + + // The DataSourceIntrospectionModelFieldType object data. The type is only present + // if DataSourceIntrospectionModelFieldType.kind is set to NonNull or List. + // + // The type typically contains its own kind and name fields to represent the + // actual type data. For instance, type could contain a kind value of Scalar + // with a name value of String. The values Scalar and String will be collectively + // stored in the values field. + Type *DataSourceIntrospectionModelFieldType `locationName:"type" type:"structure"` + + // The values of the type field. This field represents the AppSync data type + // equivalent of the introspected field. + Values []*string `locationName:"values" 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 DataSourceIntrospectionModelFieldType) 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 DataSourceIntrospectionModelFieldType) GoString() string { + return s.String() +} + +// SetKind sets the Kind field's value. +func (s *DataSourceIntrospectionModelFieldType) SetKind(v string) *DataSourceIntrospectionModelFieldType { + s.Kind = &v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelFieldType) SetName(v string) *DataSourceIntrospectionModelFieldType { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *DataSourceIntrospectionModelFieldType) SetType(v *DataSourceIntrospectionModelFieldType) *DataSourceIntrospectionModelFieldType { + s.Type = v + return s +} + +// SetValues sets the Values field's value. +func (s *DataSourceIntrospectionModelFieldType) SetValues(v []*string) *DataSourceIntrospectionModelFieldType { + s.Values = v + return s +} + +// The index that was retrieved from the introspected data. +type DataSourceIntrospectionModelIndex struct { + _ struct{} `type:"structure"` + + // The fields of the index. + Fields []*string `locationName:"fields" type:"list"` + + // The name of the index. + Name *string `locationName:"name" 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 DataSourceIntrospectionModelIndex) 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 DataSourceIntrospectionModelIndex) GoString() string { + return s.String() +} + +// SetFields sets the Fields field's value. +func (s *DataSourceIntrospectionModelIndex) SetFields(v []*string) *DataSourceIntrospectionModelIndex { + s.Fields = v + return s +} + +// SetName sets the Name field's value. +func (s *DataSourceIntrospectionModelIndex) SetName(v string) *DataSourceIntrospectionModelIndex { s.Name = &v return s } -// SetOpenSearchServiceConfig sets the OpenSearchServiceConfig field's value. -func (s *DataSource) SetOpenSearchServiceConfig(v *OpenSearchServiceDataSourceConfig) *DataSource { - s.OpenSearchServiceConfig = v - return s +// Represents the output of a DataSourceIntrospectionResult. This is the populated +// result of a GetDataSourceIntrospection operation. +type DataSourceIntrospectionResult struct { + _ struct{} `type:"structure"` + + // The array of DataSourceIntrospectionModel objects. + Models []*DataSourceIntrospectionModel `locationName:"models" type:"list"` + + // Determines the number of types to be returned in a single response before + // paginating. This value is typically taken from nextToken value from the previous + // response. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` } -// SetRelationalDatabaseConfig sets the RelationalDatabaseConfig field's value. -func (s *DataSource) SetRelationalDatabaseConfig(v *RelationalDatabaseDataSourceConfig) *DataSource { - s.RelationalDatabaseConfig = v - return s +// 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 DataSourceIntrospectionResult) String() string { + return awsutil.Prettify(s) } -// SetServiceRoleArn sets the ServiceRoleArn field's value. -func (s *DataSource) SetServiceRoleArn(v string) *DataSource { - s.ServiceRoleArn = &v +// 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 DataSourceIntrospectionResult) GoString() string { + return s.String() +} + +// SetModels sets the Models field's value. +func (s *DataSourceIntrospectionResult) SetModels(v []*DataSourceIntrospectionModel) *DataSourceIntrospectionResult { + s.Models = v return s } -// SetType sets the Type field's value. -func (s *DataSource) SetType(v string) *DataSource { - s.Type = &v +// SetNextToken sets the NextToken field's value. +func (s *DataSourceIntrospectionResult) SetNextToken(v string) *DataSourceIntrospectionResult { + s.NextToken = &v return s } @@ -10782,6 +11244,157 @@ func (s *GetDataSourceInput) SetName(v string) *GetDataSourceInput { return s } +type GetDataSourceIntrospectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // A boolean flag that determines whether SDL should be generated for introspected + // types or not. If set to true, each model will contain an sdl property that + // contains the SDL for that type. The SDL only contains the type data and no + // additional metadata or directives. + IncludeModelsSDL *bool `location:"querystring" locationName:"includeModelsSDL" type:"boolean"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + // + // IntrospectionId is a required field + IntrospectionId *string `location:"uri" locationName:"introspectionId" type:"string" required:"true"` + + // The maximum number of introspected types that will be returned in a single + // response. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // Determines the number of types to be returned in a single response before + // paginating. This value is typically taken from nextToken value from the previous + // response. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDataSourceIntrospectionInput) 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 GetDataSourceIntrospectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDataSourceIntrospectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDataSourceIntrospectionInput"} + if s.IntrospectionId == nil { + invalidParams.Add(request.NewErrParamRequired("IntrospectionId")) + } + if s.IntrospectionId != nil && len(*s.IntrospectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntrospectionId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIncludeModelsSDL sets the IncludeModelsSDL field's value. +func (s *GetDataSourceIntrospectionInput) SetIncludeModelsSDL(v bool) *GetDataSourceIntrospectionInput { + s.IncludeModelsSDL = &v + return s +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *GetDataSourceIntrospectionInput) SetIntrospectionId(v string) *GetDataSourceIntrospectionInput { + s.IntrospectionId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetDataSourceIntrospectionInput) SetMaxResults(v int64) *GetDataSourceIntrospectionInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetDataSourceIntrospectionInput) SetNextToken(v string) *GetDataSourceIntrospectionInput { + s.NextToken = &v + return s +} + +type GetDataSourceIntrospectionOutput struct { + _ struct{} `type:"structure"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + IntrospectionId *string `locationName:"introspectionId" type:"string"` + + // The DataSourceIntrospectionResult object data. + IntrospectionResult *DataSourceIntrospectionResult `locationName:"introspectionResult" type:"structure"` + + // The status of the introspection during retrieval. By default, when a new + // instrospection is being retrieved, the status will be set to PROCESSING. + // Once the operation has been completed, the status will change to SUCCESS + // or FAILED depending on how the data was parsed. A FAILED operation will return + // an error and its details as an introspectionStatusDetail. + IntrospectionStatus *string `locationName:"introspectionStatus" type:"string" enum:"DataSourceIntrospectionStatus"` + + // The error detail field. When a FAILED introspectionStatus is returned, the + // introspectionStatusDetail will also return the exact error that was generated + // during the operation. + IntrospectionStatusDetail *string `locationName:"introspectionStatusDetail" 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 GetDataSourceIntrospectionOutput) 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 GetDataSourceIntrospectionOutput) GoString() string { + return s.String() +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionId(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionId = &v + return s +} + +// SetIntrospectionResult sets the IntrospectionResult field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionResult(v *DataSourceIntrospectionResult) *GetDataSourceIntrospectionOutput { + s.IntrospectionResult = v + return s +} + +// SetIntrospectionStatus sets the IntrospectionStatus field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionStatus(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionStatus = &v + return s +} + +// SetIntrospectionStatusDetail sets the IntrospectionStatusDetail field's value. +func (s *GetDataSourceIntrospectionOutput) SetIntrospectionStatusDetail(v string) *GetDataSourceIntrospectionOutput { + s.IntrospectionStatusDetail = &v + return s +} + type GetDataSourceOutput struct { _ struct{} `type:"structure"` @@ -13791,6 +14404,94 @@ func (s *PipelineConfig) SetFunctions(v []*string) *PipelineConfig { return s } +// Contains the metadata required to introspect the RDS cluster. +type RdsDataApiConfig struct { + _ struct{} `type:"structure"` + + // The name of the database in the cluster. + // + // DatabaseName is a required field + DatabaseName *string `locationName:"databaseName" min:"1" type:"string" required:"true"` + + // The resource ARN of the RDS cluster. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"20" type:"string" required:"true"` + + // The secret's ARN that was obtained from Secrets Manager. A secret consists + // of secret information, the secret value, plus metadata about the secret. + // A secret value can be a string or binary. It typically includes the ARN, + // secret name and description, policies, tags, encryption key from the Key + // Management Service, and key rotation data. + // + // SecretArn is a required field + SecretArn *string `locationName:"secretArn" min:"20" 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 RdsDataApiConfig) 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 RdsDataApiConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RdsDataApiConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RdsDataApiConfig"} + if s.DatabaseName == nil { + invalidParams.Add(request.NewErrParamRequired("DatabaseName")) + } + if s.DatabaseName != nil && len(*s.DatabaseName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("DatabaseName", 1)) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20)) + } + if s.SecretArn == nil { + invalidParams.Add(request.NewErrParamRequired("SecretArn")) + } + if s.SecretArn != nil && len(*s.SecretArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("SecretArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDatabaseName sets the DatabaseName field's value. +func (s *RdsDataApiConfig) SetDatabaseName(v string) *RdsDataApiConfig { + s.DatabaseName = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *RdsDataApiConfig) SetResourceArn(v string) *RdsDataApiConfig { + s.ResourceArn = &v + return s +} + +// SetSecretArn sets the SecretArn field's value. +func (s *RdsDataApiConfig) SetSecretArn(v string) *RdsDataApiConfig { + s.SecretArn = &v + return s +} + // The Amazon Relational Database Service (Amazon RDS) HTTP endpoint configuration. type RdsHttpEndpointConfig struct { _ struct{} `type:"structure"` @@ -14315,6 +15016,108 @@ func (s *SourceApiAssociationSummary) SetSourceApiId(v string) *SourceApiAssocia return s } +type StartDataSourceIntrospectionInput struct { + _ struct{} `type:"structure"` + + // The rdsDataApiConfig object data. + RdsDataApiConfig *RdsDataApiConfig `locationName:"rdsDataApiConfig" 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 StartDataSourceIntrospectionInput) 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 StartDataSourceIntrospectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartDataSourceIntrospectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartDataSourceIntrospectionInput"} + if s.RdsDataApiConfig != nil { + if err := s.RdsDataApiConfig.Validate(); err != nil { + invalidParams.AddNested("RdsDataApiConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRdsDataApiConfig sets the RdsDataApiConfig field's value. +func (s *StartDataSourceIntrospectionInput) SetRdsDataApiConfig(v *RdsDataApiConfig) *StartDataSourceIntrospectionInput { + s.RdsDataApiConfig = v + return s +} + +type StartDataSourceIntrospectionOutput struct { + _ struct{} `type:"structure"` + + // The introspection ID. Each introspection contains a unique ID that can be + // used to reference the instrospection record. + IntrospectionId *string `locationName:"introspectionId" type:"string"` + + // The status of the introspection during creation. By default, when a new instrospection + // has been created, the status will be set to PROCESSING. Once the operation + // has been completed, the status will change to SUCCESS or FAILED depending + // on how the data was parsed. A FAILED operation will return an error and its + // details as an introspectionStatusDetail. + IntrospectionStatus *string `locationName:"introspectionStatus" type:"string" enum:"DataSourceIntrospectionStatus"` + + // The error detail field. When a FAILED introspectionStatus is returned, the + // introspectionStatusDetail will also return the exact error that was generated + // during the operation. + IntrospectionStatusDetail *string `locationName:"introspectionStatusDetail" 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 StartDataSourceIntrospectionOutput) 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 StartDataSourceIntrospectionOutput) GoString() string { + return s.String() +} + +// SetIntrospectionId sets the IntrospectionId field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionId(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionId = &v + return s +} + +// SetIntrospectionStatus sets the IntrospectionStatus field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionStatus(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionStatus = &v + return s +} + +// SetIntrospectionStatusDetail sets the IntrospectionStatusDetail field's value. +func (s *StartDataSourceIntrospectionOutput) SetIntrospectionStatusDetail(v string) *StartDataSourceIntrospectionOutput { + s.IntrospectionStatusDetail = &v + return s +} + type StartSchemaCreationInput struct { _ struct{} `type:"structure"` @@ -16717,6 +17520,26 @@ func ConflictHandlerType_Values() []string { } } +const ( + // DataSourceIntrospectionStatusProcessing is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusProcessing = "PROCESSING" + + // DataSourceIntrospectionStatusFailed is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusFailed = "FAILED" + + // DataSourceIntrospectionStatusSuccess is a DataSourceIntrospectionStatus enum value + DataSourceIntrospectionStatusSuccess = "SUCCESS" +) + +// DataSourceIntrospectionStatus_Values returns all elements of the DataSourceIntrospectionStatus enum +func DataSourceIntrospectionStatus_Values() []string { + return []string{ + DataSourceIntrospectionStatusProcessing, + DataSourceIntrospectionStatusFailed, + DataSourceIntrospectionStatusSuccess, + } +} + const ( // DataSourceTypeAwsLambda is a DataSourceType enum value DataSourceTypeAwsLambda = "AWS_LAMBDA" diff --git a/service/appsync/appsynciface/interface.go b/service/appsync/appsynciface/interface.go index cecbcacb90e..787439efcf0 100644 --- a/service/appsync/appsynciface/interface.go +++ b/service/appsync/appsynciface/interface.go @@ -172,6 +172,10 @@ type AppSyncAPI interface { GetDataSourceWithContext(aws.Context, *appsync.GetDataSourceInput, ...request.Option) (*appsync.GetDataSourceOutput, error) GetDataSourceRequest(*appsync.GetDataSourceInput) (*request.Request, *appsync.GetDataSourceOutput) + GetDataSourceIntrospection(*appsync.GetDataSourceIntrospectionInput) (*appsync.GetDataSourceIntrospectionOutput, error) + GetDataSourceIntrospectionWithContext(aws.Context, *appsync.GetDataSourceIntrospectionInput, ...request.Option) (*appsync.GetDataSourceIntrospectionOutput, error) + GetDataSourceIntrospectionRequest(*appsync.GetDataSourceIntrospectionInput) (*request.Request, *appsync.GetDataSourceIntrospectionOutput) + GetDomainName(*appsync.GetDomainNameInput) (*appsync.GetDomainNameOutput, error) GetDomainNameWithContext(aws.Context, *appsync.GetDomainNameInput, ...request.Option) (*appsync.GetDomainNameOutput, error) GetDomainNameRequest(*appsync.GetDomainNameInput) (*request.Request, *appsync.GetDomainNameOutput) @@ -248,6 +252,10 @@ type AppSyncAPI interface { ListTypesByAssociationWithContext(aws.Context, *appsync.ListTypesByAssociationInput, ...request.Option) (*appsync.ListTypesByAssociationOutput, error) ListTypesByAssociationRequest(*appsync.ListTypesByAssociationInput) (*request.Request, *appsync.ListTypesByAssociationOutput) + StartDataSourceIntrospection(*appsync.StartDataSourceIntrospectionInput) (*appsync.StartDataSourceIntrospectionOutput, error) + StartDataSourceIntrospectionWithContext(aws.Context, *appsync.StartDataSourceIntrospectionInput, ...request.Option) (*appsync.StartDataSourceIntrospectionOutput, error) + StartDataSourceIntrospectionRequest(*appsync.StartDataSourceIntrospectionInput) (*request.Request, *appsync.StartDataSourceIntrospectionOutput) + StartSchemaCreation(*appsync.StartSchemaCreationInput) (*appsync.StartSchemaCreationOutput, error) StartSchemaCreationWithContext(aws.Context, *appsync.StartSchemaCreationInput, ...request.Option) (*appsync.StartSchemaCreationOutput, error) StartSchemaCreationRequest(*appsync.StartSchemaCreationInput) (*request.Request, *appsync.StartSchemaCreationOutput) diff --git a/service/b2bi/api.go b/service/b2bi/api.go new file mode 100644 index 00000000000..381e8f86356 --- /dev/null +++ b/service/b2bi/api.go @@ -0,0 +1,8416 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opCreateCapability = "CreateCapability" + +// CreateCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the CreateCapability 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 CreateCapability for more information on using the CreateCapability +// 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 CreateCapabilityRequest method. +// req, resp := client.CreateCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateCapability +func (c *B2bi) CreateCapabilityRequest(input *CreateCapabilityInput) (req *request.Request, output *CreateCapabilityOutput) { + op := &request.Operation{ + Name: opCreateCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateCapabilityInput{} + } + + output = &CreateCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateCapability API operation for AWS B2B Data Interchange. +// +// Instantiates a capability based on the specified parameters. Capabilities +// contain the information necessary to process incoming EDI (electronic data +// interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateCapability +func (c *B2bi) CreateCapability(input *CreateCapabilityInput) (*CreateCapabilityOutput, error) { + req, out := c.CreateCapabilityRequest(input) + return out, req.Send() +} + +// CreateCapabilityWithContext is the same as CreateCapability with the addition of +// the ability to pass a context and additional request options. +// +// See CreateCapability 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 *B2bi) CreateCapabilityWithContext(ctx aws.Context, input *CreateCapabilityInput, opts ...request.Option) (*CreateCapabilityOutput, error) { + req, out := c.CreateCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreatePartnership = "CreatePartnership" + +// CreatePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the CreatePartnership 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 CreatePartnership for more information on using the CreatePartnership +// 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 CreatePartnershipRequest method. +// req, resp := client.CreatePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreatePartnership +func (c *B2bi) CreatePartnershipRequest(input *CreatePartnershipInput) (req *request.Request, output *CreatePartnershipOutput) { + op := &request.Operation{ + Name: opCreatePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreatePartnershipInput{} + } + + output = &CreatePartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreatePartnership API operation for AWS B2B Data Interchange. +// +// Creates a partnership between a customer and a trading partner, based on +// the supplied parameters. Partnerships link trading partners with your profile +// and a specific transformer, so that the EDI (electronic data interchange) +// documents that they upload to Amazon S3 can be processed according to their +// specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreatePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreatePartnership +func (c *B2bi) CreatePartnership(input *CreatePartnershipInput) (*CreatePartnershipOutput, error) { + req, out := c.CreatePartnershipRequest(input) + return out, req.Send() +} + +// CreatePartnershipWithContext is the same as CreatePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See CreatePartnership 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 *B2bi) CreatePartnershipWithContext(ctx aws.Context, input *CreatePartnershipInput, opts ...request.Option) (*CreatePartnershipOutput, error) { + req, out := c.CreatePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateProfile = "CreateProfile" + +// CreateProfileRequest generates a "aws/request.Request" representing the +// client's request for the CreateProfile 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 CreateProfile for more information on using the CreateProfile +// 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 CreateProfileRequest method. +// req, resp := client.CreateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateProfile +func (c *B2bi) CreateProfileRequest(input *CreateProfileInput) (req *request.Request, output *CreateProfileOutput) { + op := &request.Operation{ + Name: opCreateProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateProfileInput{} + } + + output = &CreateProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateProfile API operation for AWS B2B Data Interchange. +// +// Creates a customer profile. You can have up to five customer profiles, each +// representing a distinct private network. Profiles contain basic information +// about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateProfile +func (c *B2bi) CreateProfile(input *CreateProfileInput) (*CreateProfileOutput, error) { + req, out := c.CreateProfileRequest(input) + return out, req.Send() +} + +// CreateProfileWithContext is the same as CreateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See CreateProfile 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 *B2bi) CreateProfileWithContext(ctx aws.Context, input *CreateProfileInput, opts ...request.Option) (*CreateProfileOutput, error) { + req, out := c.CreateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateTransformer = "CreateTransformer" + +// CreateTransformerRequest generates a "aws/request.Request" representing the +// client's request for the CreateTransformer 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 CreateTransformer for more information on using the CreateTransformer +// 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 CreateTransformerRequest method. +// req, resp := client.CreateTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateTransformer +func (c *B2bi) CreateTransformerRequest(input *CreateTransformerInput) (req *request.Request, output *CreateTransformerOutput) { + op := &request.Operation{ + Name: opCreateTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateTransformerInput{} + } + + output = &CreateTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTransformer API operation for AWS B2B Data Interchange. +// +// Creates a transformer. Transformers describe how to process the incoming +// EDI (electronic data interchange) documents, and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation CreateTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/CreateTransformer +func (c *B2bi) CreateTransformer(input *CreateTransformerInput) (*CreateTransformerOutput, error) { + req, out := c.CreateTransformerRequest(input) + return out, req.Send() +} + +// CreateTransformerWithContext is the same as CreateTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTransformer 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 *B2bi) CreateTransformerWithContext(ctx aws.Context, input *CreateTransformerInput, opts ...request.Option) (*CreateTransformerOutput, error) { + req, out := c.CreateTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteCapability = "DeleteCapability" + +// DeleteCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the DeleteCapability 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 DeleteCapability for more information on using the DeleteCapability +// 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 DeleteCapabilityRequest method. +// req, resp := client.DeleteCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteCapability +func (c *B2bi) DeleteCapabilityRequest(input *DeleteCapabilityInput) (req *request.Request, output *DeleteCapabilityOutput) { + op := &request.Operation{ + Name: opDeleteCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteCapabilityInput{} + } + + output = &DeleteCapabilityOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteCapability API operation for AWS B2B Data Interchange. +// +// Deletes the specified capability. Capabilities contain the information necessary +// to process incoming EDI (electronic data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteCapability +func (c *B2bi) DeleteCapability(input *DeleteCapabilityInput) (*DeleteCapabilityOutput, error) { + req, out := c.DeleteCapabilityRequest(input) + return out, req.Send() +} + +// DeleteCapabilityWithContext is the same as DeleteCapability with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteCapability 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 *B2bi) DeleteCapabilityWithContext(ctx aws.Context, input *DeleteCapabilityInput, opts ...request.Option) (*DeleteCapabilityOutput, error) { + req, out := c.DeleteCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeletePartnership = "DeletePartnership" + +// DeletePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the DeletePartnership 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 DeletePartnership for more information on using the DeletePartnership +// 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 DeletePartnershipRequest method. +// req, resp := client.DeletePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeletePartnership +func (c *B2bi) DeletePartnershipRequest(input *DeletePartnershipInput) (req *request.Request, output *DeletePartnershipOutput) { + op := &request.Operation{ + Name: opDeletePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeletePartnershipInput{} + } + + output = &DeletePartnershipOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeletePartnership API operation for AWS B2B Data Interchange. +// +// Deletes the specified partnership. Partnerships link trading partners with +// your profile and a specific transformer, so that the EDI (electronic data +// interchange) documents that they upload to Amazon S3 can be processed according +// to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeletePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeletePartnership +func (c *B2bi) DeletePartnership(input *DeletePartnershipInput) (*DeletePartnershipOutput, error) { + req, out := c.DeletePartnershipRequest(input) + return out, req.Send() +} + +// DeletePartnershipWithContext is the same as DeletePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See DeletePartnership 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 *B2bi) DeletePartnershipWithContext(ctx aws.Context, input *DeletePartnershipInput, opts ...request.Option) (*DeletePartnershipOutput, error) { + req, out := c.DeletePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteProfile = "DeleteProfile" + +// DeleteProfileRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProfile 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 DeleteProfile for more information on using the DeleteProfile +// 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 DeleteProfileRequest method. +// req, resp := client.DeleteProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteProfile +func (c *B2bi) DeleteProfileRequest(input *DeleteProfileInput) (req *request.Request, output *DeleteProfileOutput) { + op := &request.Operation{ + Name: opDeleteProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteProfileInput{} + } + + output = &DeleteProfileOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProfile API operation for AWS B2B Data Interchange. +// +// Deletes the specified profile. Profiles contain basic information about you +// and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteProfile +func (c *B2bi) DeleteProfile(input *DeleteProfileInput) (*DeleteProfileOutput, error) { + req, out := c.DeleteProfileRequest(input) + return out, req.Send() +} + +// DeleteProfileWithContext is the same as DeleteProfile with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProfile 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 *B2bi) DeleteProfileWithContext(ctx aws.Context, input *DeleteProfileInput, opts ...request.Option) (*DeleteProfileOutput, error) { + req, out := c.DeleteProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteTransformer = "DeleteTransformer" + +// DeleteTransformerRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTransformer 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 DeleteTransformer for more information on using the DeleteTransformer +// 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 DeleteTransformerRequest method. +// req, resp := client.DeleteTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteTransformer +func (c *B2bi) DeleteTransformerRequest(input *DeleteTransformerInput) (req *request.Request, output *DeleteTransformerOutput) { + op := &request.Operation{ + Name: opDeleteTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteTransformerInput{} + } + + output = &DeleteTransformerOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTransformer API operation for AWS B2B Data Interchange. +// +// Deletes the specified transformer. Transformers describe how to process the +// incoming EDI (electronic data interchange) documents, and extract the necessary +// information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation DeleteTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/DeleteTransformer +func (c *B2bi) DeleteTransformer(input *DeleteTransformerInput) (*DeleteTransformerOutput, error) { + req, out := c.DeleteTransformerRequest(input) + return out, req.Send() +} + +// DeleteTransformerWithContext is the same as DeleteTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTransformer 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 *B2bi) DeleteTransformerWithContext(ctx aws.Context, input *DeleteTransformerInput, opts ...request.Option) (*DeleteTransformerOutput, error) { + req, out := c.DeleteTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCapability = "GetCapability" + +// GetCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the GetCapability 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 GetCapability for more information on using the GetCapability +// 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 GetCapabilityRequest method. +// req, resp := client.GetCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetCapability +func (c *B2bi) GetCapabilityRequest(input *GetCapabilityInput) (req *request.Request, output *GetCapabilityOutput) { + op := &request.Operation{ + Name: opGetCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCapabilityInput{} + } + + output = &GetCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCapability API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the specified capability. Capabilities contain +// the information necessary to process incoming EDI (electronic data interchange) +// documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetCapability for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetCapability +func (c *B2bi) GetCapability(input *GetCapabilityInput) (*GetCapabilityOutput, error) { + req, out := c.GetCapabilityRequest(input) + return out, req.Send() +} + +// GetCapabilityWithContext is the same as GetCapability with the addition of +// the ability to pass a context and additional request options. +// +// See GetCapability 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 *B2bi) GetCapabilityWithContext(ctx aws.Context, input *GetCapabilityInput, opts ...request.Option) (*GetCapabilityOutput, error) { + req, out := c.GetCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetPartnership = "GetPartnership" + +// GetPartnershipRequest generates a "aws/request.Request" representing the +// client's request for the GetPartnership 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 GetPartnership for more information on using the GetPartnership +// 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 GetPartnershipRequest method. +// req, resp := client.GetPartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetPartnership +func (c *B2bi) GetPartnershipRequest(input *GetPartnershipInput) (req *request.Request, output *GetPartnershipOutput) { + op := &request.Operation{ + Name: opGetPartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetPartnershipInput{} + } + + output = &GetPartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPartnership API operation for AWS B2B Data Interchange. +// +// Retrieves the details for a partnership, based on the partner and profile +// IDs specified. Partnerships link trading partners with your profile and a +// specific transformer, so that the EDI (electronic data interchange) documents +// that they upload to Amazon S3 can be processed according to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetPartnership for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetPartnership +func (c *B2bi) GetPartnership(input *GetPartnershipInput) (*GetPartnershipOutput, error) { + req, out := c.GetPartnershipRequest(input) + return out, req.Send() +} + +// GetPartnershipWithContext is the same as GetPartnership with the addition of +// the ability to pass a context and additional request options. +// +// See GetPartnership 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 *B2bi) GetPartnershipWithContext(ctx aws.Context, input *GetPartnershipInput, opts ...request.Option) (*GetPartnershipOutput, error) { + req, out := c.GetPartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetProfile = "GetProfile" + +// GetProfileRequest generates a "aws/request.Request" representing the +// client's request for the GetProfile 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 GetProfile for more information on using the GetProfile +// 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 GetProfileRequest method. +// req, resp := client.GetProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetProfile +func (c *B2bi) GetProfileRequest(input *GetProfileInput) (req *request.Request, output *GetProfileOutput) { + op := &request.Operation{ + Name: opGetProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetProfileInput{} + } + + output = &GetProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetProfile API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the profile specified by the profile ID. Profiles +// contain basic information about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetProfile for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetProfile +func (c *B2bi) GetProfile(input *GetProfileInput) (*GetProfileOutput, error) { + req, out := c.GetProfileRequest(input) + return out, req.Send() +} + +// GetProfileWithContext is the same as GetProfile with the addition of +// the ability to pass a context and additional request options. +// +// See GetProfile 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 *B2bi) GetProfileWithContext(ctx aws.Context, input *GetProfileInput, opts ...request.Option) (*GetProfileOutput, error) { + req, out := c.GetProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTransformer = "GetTransformer" + +// GetTransformerRequest generates a "aws/request.Request" representing the +// client's request for the GetTransformer 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 GetTransformer for more information on using the GetTransformer +// 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 GetTransformerRequest method. +// req, resp := client.GetTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformer +func (c *B2bi) GetTransformerRequest(input *GetTransformerInput) (req *request.Request, output *GetTransformerOutput) { + op := &request.Operation{ + Name: opGetTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTransformerInput{} + } + + output = &GetTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTransformer API operation for AWS B2B Data Interchange. +// +// Retrieves the details for the transformer specified by the transformer ID. +// Transformers describe how to process the incoming EDI (electronic data interchange) +// documents, and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetTransformer for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformer +func (c *B2bi) GetTransformer(input *GetTransformerInput) (*GetTransformerOutput, error) { + req, out := c.GetTransformerRequest(input) + return out, req.Send() +} + +// GetTransformerWithContext is the same as GetTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See GetTransformer 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 *B2bi) GetTransformerWithContext(ctx aws.Context, input *GetTransformerInput, opts ...request.Option) (*GetTransformerOutput, error) { + req, out := c.GetTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetTransformerJob = "GetTransformerJob" + +// GetTransformerJobRequest generates a "aws/request.Request" representing the +// client's request for the GetTransformerJob 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 GetTransformerJob for more information on using the GetTransformerJob +// 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 GetTransformerJobRequest method. +// req, resp := client.GetTransformerJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformerJob +func (c *B2bi) GetTransformerJobRequest(input *GetTransformerJobInput) (req *request.Request, output *GetTransformerJobOutput) { + op := &request.Operation{ + Name: opGetTransformerJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetTransformerJobInput{} + } + + output = &GetTransformerJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTransformerJob API operation for AWS B2B Data Interchange. +// +// Returns the details of the transformer run, based on the Transformer job +// ID. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation GetTransformerJob for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/GetTransformerJob +func (c *B2bi) GetTransformerJob(input *GetTransformerJobInput) (*GetTransformerJobOutput, error) { + req, out := c.GetTransformerJobRequest(input) + return out, req.Send() +} + +// GetTransformerJobWithContext is the same as GetTransformerJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetTransformerJob 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 *B2bi) GetTransformerJobWithContext(ctx aws.Context, input *GetTransformerJobInput, opts ...request.Option) (*GetTransformerJobOutput, error) { + req, out := c.GetTransformerJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListCapabilities = "ListCapabilities" + +// ListCapabilitiesRequest generates a "aws/request.Request" representing the +// client's request for the ListCapabilities 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 ListCapabilities for more information on using the ListCapabilities +// 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 ListCapabilitiesRequest method. +// req, resp := client.ListCapabilitiesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListCapabilities +func (c *B2bi) ListCapabilitiesRequest(input *ListCapabilitiesInput) (req *request.Request, output *ListCapabilitiesOutput) { + op := &request.Operation{ + Name: opListCapabilities, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListCapabilitiesInput{} + } + + output = &ListCapabilitiesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListCapabilities API operation for AWS B2B Data Interchange. +// +// Lists the capabilities associated with your Amazon Web Services account for +// your current or specified region. Capabilities contain the information necessary +// to process incoming EDI (electronic data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListCapabilities for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListCapabilities +func (c *B2bi) ListCapabilities(input *ListCapabilitiesInput) (*ListCapabilitiesOutput, error) { + req, out := c.ListCapabilitiesRequest(input) + return out, req.Send() +} + +// ListCapabilitiesWithContext is the same as ListCapabilities with the addition of +// the ability to pass a context and additional request options. +// +// See ListCapabilities 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 *B2bi) ListCapabilitiesWithContext(ctx aws.Context, input *ListCapabilitiesInput, opts ...request.Option) (*ListCapabilitiesOutput, error) { + req, out := c.ListCapabilitiesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListCapabilitiesPages iterates over the pages of a ListCapabilities operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListCapabilities 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 ListCapabilities operation. +// pageNum := 0 +// err := client.ListCapabilitiesPages(params, +// func(page *b2bi.ListCapabilitiesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListCapabilitiesPages(input *ListCapabilitiesInput, fn func(*ListCapabilitiesOutput, bool) bool) error { + return c.ListCapabilitiesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListCapabilitiesPagesWithContext same as ListCapabilitiesPages 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 *B2bi) ListCapabilitiesPagesWithContext(ctx aws.Context, input *ListCapabilitiesInput, fn func(*ListCapabilitiesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListCapabilitiesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListCapabilitiesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListCapabilitiesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListPartnerships = "ListPartnerships" + +// ListPartnershipsRequest generates a "aws/request.Request" representing the +// client's request for the ListPartnerships 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 ListPartnerships for more information on using the ListPartnerships +// 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 ListPartnershipsRequest method. +// req, resp := client.ListPartnershipsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListPartnerships +func (c *B2bi) ListPartnershipsRequest(input *ListPartnershipsInput) (req *request.Request, output *ListPartnershipsOutput) { + op := &request.Operation{ + Name: opListPartnerships, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPartnershipsInput{} + } + + output = &ListPartnershipsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPartnerships API operation for AWS B2B Data Interchange. +// +// Lists the partnerships associated with your Amazon Web Services account for +// your current or specified region. Partnerships link trading partners with +// your profile and a specific transformer, so that the EDI (electronic data +// interchange) documents that they upload to Amazon S3 can be processed according +// to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListPartnerships for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListPartnerships +func (c *B2bi) ListPartnerships(input *ListPartnershipsInput) (*ListPartnershipsOutput, error) { + req, out := c.ListPartnershipsRequest(input) + return out, req.Send() +} + +// ListPartnershipsWithContext is the same as ListPartnerships with the addition of +// the ability to pass a context and additional request options. +// +// See ListPartnerships 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 *B2bi) ListPartnershipsWithContext(ctx aws.Context, input *ListPartnershipsInput, opts ...request.Option) (*ListPartnershipsOutput, error) { + req, out := c.ListPartnershipsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPartnershipsPages iterates over the pages of a ListPartnerships operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPartnerships 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 ListPartnerships operation. +// pageNum := 0 +// err := client.ListPartnershipsPages(params, +// func(page *b2bi.ListPartnershipsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListPartnershipsPages(input *ListPartnershipsInput, fn func(*ListPartnershipsOutput, bool) bool) error { + return c.ListPartnershipsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPartnershipsPagesWithContext same as ListPartnershipsPages 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 *B2bi) ListPartnershipsPagesWithContext(ctx aws.Context, input *ListPartnershipsInput, fn func(*ListPartnershipsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPartnershipsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPartnershipsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPartnershipsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListProfiles = "ListProfiles" + +// ListProfilesRequest generates a "aws/request.Request" representing the +// client's request for the ListProfiles 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 ListProfiles for more information on using the ListProfiles +// 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 ListProfilesRequest method. +// req, resp := client.ListProfilesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListProfiles +func (c *B2bi) ListProfilesRequest(input *ListProfilesInput) (req *request.Request, output *ListProfilesOutput) { + op := &request.Operation{ + Name: opListProfiles, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListProfilesInput{} + } + + output = &ListProfilesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListProfiles API operation for AWS B2B Data Interchange. +// +// Lists the profiles associated with your Amazon Web Services account for your +// current or specified region. Profiles contain basic information about you +// and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListProfiles for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListProfiles +func (c *B2bi) ListProfiles(input *ListProfilesInput) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) + return out, req.Send() +} + +// ListProfilesWithContext is the same as ListProfiles with the addition of +// the ability to pass a context and additional request options. +// +// See ListProfiles 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 *B2bi) ListProfilesWithContext(ctx aws.Context, input *ListProfilesInput, opts ...request.Option) (*ListProfilesOutput, error) { + req, out := c.ListProfilesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListProfilesPages iterates over the pages of a ListProfiles operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListProfiles 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 ListProfiles operation. +// pageNum := 0 +// err := client.ListProfilesPages(params, +// func(page *b2bi.ListProfilesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListProfilesPages(input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool) error { + return c.ListProfilesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListProfilesPagesWithContext same as ListProfilesPages 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 *B2bi) ListProfilesPagesWithContext(ctx aws.Context, input *ListProfilesInput, fn func(*ListProfilesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListProfilesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListProfilesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListProfilesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTagsForResource +func (c *B2bi) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS B2B Data Interchange. +// +// Lists all of the tags associated with the Amazon Resource Name (ARN) that +// you specify. The resource can be a capability, partnership, profile, or transformer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTagsForResource +func (c *B2bi) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListTransformers = "ListTransformers" + +// ListTransformersRequest generates a "aws/request.Request" representing the +// client's request for the ListTransformers 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 ListTransformers for more information on using the ListTransformers +// 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 ListTransformersRequest method. +// req, resp := client.ListTransformersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTransformers +func (c *B2bi) ListTransformersRequest(input *ListTransformersInput) (req *request.Request, output *ListTransformersOutput) { + op := &request.Operation{ + Name: opListTransformers, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTransformersInput{} + } + + output = &ListTransformersOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTransformers API operation for AWS B2B Data Interchange. +// +// Lists the available transformers. Transformers describe how to process the +// incoming EDI (electronic data interchange) documents, and extract the necessary +// information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation ListTransformers for usage and error information. +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/ListTransformers +func (c *B2bi) ListTransformers(input *ListTransformersInput) (*ListTransformersOutput, error) { + req, out := c.ListTransformersRequest(input) + return out, req.Send() +} + +// ListTransformersWithContext is the same as ListTransformers with the addition of +// the ability to pass a context and additional request options. +// +// See ListTransformers 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 *B2bi) ListTransformersWithContext(ctx aws.Context, input *ListTransformersInput, opts ...request.Option) (*ListTransformersOutput, error) { + req, out := c.ListTransformersRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTransformersPages iterates over the pages of a ListTransformers operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTransformers 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 ListTransformers operation. +// pageNum := 0 +// err := client.ListTransformersPages(params, +// func(page *b2bi.ListTransformersOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *B2bi) ListTransformersPages(input *ListTransformersInput, fn func(*ListTransformersOutput, bool) bool) error { + return c.ListTransformersPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTransformersPagesWithContext same as ListTransformersPages 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 *B2bi) ListTransformersPagesWithContext(ctx aws.Context, input *ListTransformersInput, fn func(*ListTransformersOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTransformersInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTransformersRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTransformersOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartTransformerJob = "StartTransformerJob" + +// StartTransformerJobRequest generates a "aws/request.Request" representing the +// client's request for the StartTransformerJob 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 StartTransformerJob for more information on using the StartTransformerJob +// 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 StartTransformerJobRequest method. +// req, resp := client.StartTransformerJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/StartTransformerJob +func (c *B2bi) StartTransformerJobRequest(input *StartTransformerJobInput) (req *request.Request, output *StartTransformerJobOutput) { + op := &request.Operation{ + Name: opStartTransformerJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartTransformerJobInput{} + } + + output = &StartTransformerJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartTransformerJob API operation for AWS B2B Data Interchange. +// +// Runs a job, using a transformer, to parse input EDI (electronic data interchange) +// file into the output structures used by Amazon Web Services B2BI Data Interchange. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation StartTransformerJob for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/StartTransformerJob +func (c *B2bi) StartTransformerJob(input *StartTransformerJobInput) (*StartTransformerJobOutput, error) { + req, out := c.StartTransformerJobRequest(input) + return out, req.Send() +} + +// StartTransformerJobWithContext is the same as StartTransformerJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartTransformerJob 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 *B2bi) StartTransformerJobWithContext(ctx aws.Context, input *StartTransformerJobInput, opts ...request.Option) (*StartTransformerJobOutput, error) { + req, out := c.StartTransformerJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TagResource +func (c *B2bi) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS B2B Data Interchange. +// +// Attaches a key-value pair to a resource, as identified by its Amazon Resource +// Name (ARN). Resources are capability, partnership, profile, transformers +// and other entities. +// +// There is no response returned from this call. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TagResource +func (c *B2bi) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTestMapping = "TestMapping" + +// TestMappingRequest generates a "aws/request.Request" representing the +// client's request for the TestMapping 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 TestMapping for more information on using the TestMapping +// 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 TestMappingRequest method. +// req, resp := client.TestMappingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestMapping +func (c *B2bi) TestMappingRequest(input *TestMappingInput) (req *request.Request, output *TestMappingOutput) { + op := &request.Operation{ + Name: opTestMapping, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TestMappingInput{} + } + + output = &TestMappingOutput{} + req = c.newRequest(op, input, output) + return +} + +// TestMapping API operation for AWS B2B Data Interchange. +// +// Maps the input file according to the provided template file. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TestMapping for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestMapping +func (c *B2bi) TestMapping(input *TestMappingInput) (*TestMappingOutput, error) { + req, out := c.TestMappingRequest(input) + return out, req.Send() +} + +// TestMappingWithContext is the same as TestMapping with the addition of +// the ability to pass a context and additional request options. +// +// See TestMapping 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 *B2bi) TestMappingWithContext(ctx aws.Context, input *TestMappingInput, opts ...request.Option) (*TestMappingOutput, error) { + req, out := c.TestMappingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTestParsing = "TestParsing" + +// TestParsingRequest generates a "aws/request.Request" representing the +// client's request for the TestParsing 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 TestParsing for more information on using the TestParsing +// 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 TestParsingRequest method. +// req, resp := client.TestParsingRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestParsing +func (c *B2bi) TestParsingRequest(input *TestParsingInput) (req *request.Request, output *TestParsingOutput) { + op := &request.Operation{ + Name: opTestParsing, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TestParsingInput{} + } + + output = &TestParsingOutput{} + req = c.newRequest(op, input, output) + return +} + +// TestParsing API operation for AWS B2B Data Interchange. +// +// Parses the input EDI (electronic data interchange) file. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation TestParsing for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/TestParsing +func (c *B2bi) TestParsing(input *TestParsingInput) (*TestParsingOutput, error) { + req, out := c.TestParsingRequest(input) + return out, req.Send() +} + +// TestParsingWithContext is the same as TestParsing with the addition of +// the ability to pass a context and additional request options. +// +// See TestParsing 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 *B2bi) TestParsingWithContext(ctx aws.Context, input *TestParsingInput, opts ...request.Option) (*TestParsingOutput, error) { + req, out := c.TestParsingRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UntagResource +func (c *B2bi) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS B2B Data Interchange. +// +// Detaches a key-value pair from the specified resource, as identified by its +// Amazon Resource Name (ARN). Resources are capability, partnership, profile, +// transformers and other entities. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UntagResource +func (c *B2bi) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *B2bi) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateCapability = "UpdateCapability" + +// UpdateCapabilityRequest generates a "aws/request.Request" representing the +// client's request for the UpdateCapability 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 UpdateCapability for more information on using the UpdateCapability +// 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 UpdateCapabilityRequest method. +// req, resp := client.UpdateCapabilityRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateCapability +func (c *B2bi) UpdateCapabilityRequest(input *UpdateCapabilityInput) (req *request.Request, output *UpdateCapabilityOutput) { + op := &request.Operation{ + Name: opUpdateCapability, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateCapabilityInput{} + } + + output = &UpdateCapabilityOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateCapability API operation for AWS B2B Data Interchange. +// +// Updates some of the parameters for a capability, based on the specified parameters. +// Capabilities contain the information necessary to process incoming EDI (electronic +// data interchange) documents. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateCapability for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateCapability +func (c *B2bi) UpdateCapability(input *UpdateCapabilityInput) (*UpdateCapabilityOutput, error) { + req, out := c.UpdateCapabilityRequest(input) + return out, req.Send() +} + +// UpdateCapabilityWithContext is the same as UpdateCapability with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateCapability 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 *B2bi) UpdateCapabilityWithContext(ctx aws.Context, input *UpdateCapabilityInput, opts ...request.Option) (*UpdateCapabilityOutput, error) { + req, out := c.UpdateCapabilityRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdatePartnership = "UpdatePartnership" + +// UpdatePartnershipRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePartnership 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 UpdatePartnership for more information on using the UpdatePartnership +// 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 UpdatePartnershipRequest method. +// req, resp := client.UpdatePartnershipRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdatePartnership +func (c *B2bi) UpdatePartnershipRequest(input *UpdatePartnershipInput) (req *request.Request, output *UpdatePartnershipOutput) { + op := &request.Operation{ + Name: opUpdatePartnership, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdatePartnershipInput{} + } + + output = &UpdatePartnershipOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdatePartnership API operation for AWS B2B Data Interchange. +// +// Updates some of the parameters for a partnership between a customer and trading +// partner. Partnerships link trading partners with your profile and a specific +// transformer, so that the EDI (electronic data interchange) documents that +// they upload to Amazon S3 can be processed according to their specifications. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdatePartnership for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdatePartnership +func (c *B2bi) UpdatePartnership(input *UpdatePartnershipInput) (*UpdatePartnershipOutput, error) { + req, out := c.UpdatePartnershipRequest(input) + return out, req.Send() +} + +// UpdatePartnershipWithContext is the same as UpdatePartnership with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePartnership 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 *B2bi) UpdatePartnershipWithContext(ctx aws.Context, input *UpdatePartnershipInput, opts ...request.Option) (*UpdatePartnershipOutput, error) { + req, out := c.UpdatePartnershipRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateProfile = "UpdateProfile" + +// UpdateProfileRequest generates a "aws/request.Request" representing the +// client's request for the UpdateProfile 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 UpdateProfile for more information on using the UpdateProfile +// 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 UpdateProfileRequest method. +// req, resp := client.UpdateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateProfile +func (c *B2bi) UpdateProfileRequest(input *UpdateProfileInput) (req *request.Request, output *UpdateProfileOutput) { + op := &request.Operation{ + Name: opUpdateProfile, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateProfileInput{} + } + + output = &UpdateProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateProfile API operation for AWS B2B Data Interchange. +// +// Updates the specified parameters for a profile. Profiles contain basic information +// about you and your business. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateProfile for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateProfile +func (c *B2bi) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + return out, req.Send() +} + +// UpdateProfileWithContext is the same as UpdateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateProfile 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 *B2bi) UpdateProfileWithContext(ctx aws.Context, input *UpdateProfileInput, opts ...request.Option) (*UpdateProfileOutput, error) { + req, out := c.UpdateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateTransformer = "UpdateTransformer" + +// UpdateTransformerRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTransformer 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 UpdateTransformer for more information on using the UpdateTransformer +// 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 UpdateTransformerRequest method. +// req, resp := client.UpdateTransformerRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateTransformer +func (c *B2bi) UpdateTransformerRequest(input *UpdateTransformerInput) (req *request.Request, output *UpdateTransformerOutput) { + op := &request.Operation{ + Name: opUpdateTransformer, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateTransformerInput{} + } + + output = &UpdateTransformerOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTransformer API operation for AWS B2B Data Interchange. +// +// Updates the specified parameters for a transformer. Transformers describe +// how to process the incoming EDI (electronic data interchange) documents, +// and extract the necessary information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS B2B Data Interchange's +// API operation UpdateTransformer for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ValidationException +// Occurs when a B2BI object cannot be validated against a request from another +// object. +// +// - ThrottlingException +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +// +// - ResourceNotFoundException +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +// +// - ServiceQuotaExceededException +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +// +// - InternalServerException +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23/UpdateTransformer +func (c *B2bi) UpdateTransformer(input *UpdateTransformerInput) (*UpdateTransformerOutput, error) { + req, out := c.UpdateTransformerRequest(input) + return out, req.Send() +} + +// UpdateTransformerWithContext is the same as UpdateTransformer with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTransformer 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 *B2bi) UpdateTransformerWithContext(ctx aws.Context, input *UpdateTransformerInput, opts ...request.Option) (*UpdateTransformerOutput, error) { + req, out := c.UpdateTransformerRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A capability object. Currently, only EDI (electronic data interchange) capabilities +// are supported. Capabilities contain the information necessary to process +// incoming EDI (electronic data interchange) documents. +type CapabilityConfiguration struct { + _ struct{} `type:"structure"` + + // An EDI (electronic data interchange) configuration object. + Edi *EdiConfiguration `locationName:"edi" 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 CapabilityConfiguration) 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 CapabilityConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CapabilityConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CapabilityConfiguration"} + if s.Edi != nil { + if err := s.Edi.Validate(); err != nil { + invalidParams.AddNested("Edi", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdi sets the Edi field's value. +func (s *CapabilityConfiguration) SetEdi(v *EdiConfiguration) *CapabilityConfiguration { + s.Edi = v + return s +} + +// Returns the capability summary details. Capabilities contain the information +// necessary to process incoming EDI (electronic data interchange) documents. +type CapabilitySummary struct { + _ struct{} `type:"structure"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The display name of the capability. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// 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 CapabilitySummary) 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 CapabilitySummary) GoString() string { + return s.String() +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *CapabilitySummary) SetCapabilityId(v string) *CapabilitySummary { + s.CapabilityId = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CapabilitySummary) SetCreatedAt(v time.Time) *CapabilitySummary { + s.CreatedAt = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *CapabilitySummary) SetModifiedAt(v time.Time) *CapabilitySummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *CapabilitySummary) SetName(v string) *CapabilitySummary { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *CapabilitySummary) SetType(v string) *CapabilitySummary { + s.Type = &v + return s +} + +// A conflict exception is thrown when you attempt to delete a resource (such +// as a profile or a capability) that is being used by other resources. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateCapabilityInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Specifies one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Specifies the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" type:"list"` + + // Specifies the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// 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 CreateCapabilityInput) 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 CreateCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateCapabilityInput"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.InstructionsDocuments != nil { + for i, v := range s.InstructionsDocuments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstructionsDocuments", 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 +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateCapabilityInput) SetClientToken(v string) *CreateCapabilityInput { + s.ClientToken = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateCapabilityInput) SetConfiguration(v *CapabilityConfiguration) *CreateCapabilityInput { + s.Configuration = v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *CreateCapabilityInput) SetInstructionsDocuments(v []*S3Location) *CreateCapabilityInput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCapabilityInput) SetName(v string) *CreateCapabilityInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateCapabilityInput) SetTags(v []*Tag) *CreateCapabilityInput { + s.Tags = v + return s +} + +// SetType sets the Type field's value. +func (s *CreateCapabilityInput) SetType(v string) *CreateCapabilityInput { + s.Type = &v + return s +} + +type CreateCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns the name of the capability used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// 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 CreateCapabilityOutput) 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 CreateCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *CreateCapabilityOutput) SetCapabilityArn(v string) *CreateCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *CreateCapabilityOutput) SetCapabilityId(v string) *CreateCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *CreateCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *CreateCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateCapabilityOutput) SetCreatedAt(v time.Time) *CreateCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *CreateCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *CreateCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateCapabilityOutput) SetName(v string) *CreateCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *CreateCapabilityOutput) SetType(v string) *CreateCapabilityOutput { + s.Type = &v + return s +} + +type CreatePartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies a list of the capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipInput's + // String and GoString methods. + // + // Email is a required field + Email *string `locationName:"email" min:"5" type:"string" required:"true" sensitive:"true"` + + // Specifies a descriptive name for the partnership. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipInput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Specifies the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" 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 CreatePartnershipInput) 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 CreatePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreatePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreatePartnershipInput"} + if s.Email == nil { + invalidParams.Add(request.NewErrParamRequired("Email")) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + 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 +} + +// SetCapabilities sets the Capabilities field's value. +func (s *CreatePartnershipInput) SetCapabilities(v []*string) *CreatePartnershipInput { + s.Capabilities = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreatePartnershipInput) SetClientToken(v string) *CreatePartnershipInput { + s.ClientToken = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreatePartnershipInput) SetEmail(v string) *CreatePartnershipInput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreatePartnershipInput) SetName(v string) *CreatePartnershipInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreatePartnershipInput) SetPhone(v string) *CreatePartnershipInput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreatePartnershipInput) SetProfileId(v string) *CreatePartnershipInput { + s.ProfileId = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreatePartnershipInput) SetTags(v []*Tag) *CreatePartnershipInput { + s.Tags = v + return s +} + +type CreatePartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a descriptive name for the partnership. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreatePartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" 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 CreatePartnershipOutput) 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 CreatePartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *CreatePartnershipOutput) SetCapabilities(v []*string) *CreatePartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreatePartnershipOutput) SetCreatedAt(v time.Time) *CreatePartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreatePartnershipOutput) SetEmail(v string) *CreatePartnershipOutput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreatePartnershipOutput) SetName(v string) *CreatePartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *CreatePartnershipOutput) SetPartnershipArn(v string) *CreatePartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *CreatePartnershipOutput) SetPartnershipId(v string) *CreatePartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreatePartnershipOutput) SetPhone(v string) *CreatePartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreatePartnershipOutput) SetProfileId(v string) *CreatePartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *CreatePartnershipOutput) SetTradingPartnerId(v string) *CreatePartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type CreateProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileInput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Specifies whether or not logging is enabled for this profile. + // + // Logging is a required field + Logging *string `locationName:"logging" type:"string" required:"true" enum:"Logging"` + + // Specifies the name of the profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileInput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" 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 CreateProfileInput) 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 CreateProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateProfileInput"} + if s.BusinessName == nil { + invalidParams.Add(request.NewErrParamRequired("BusinessName")) + } + if s.BusinessName != nil && len(*s.BusinessName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BusinessName", 1)) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Logging == nil { + invalidParams.Add(request.NewErrParamRequired("Logging")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone == nil { + invalidParams.Add(request.NewErrParamRequired("Phone")) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + 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 +} + +// SetBusinessName sets the BusinessName field's value. +func (s *CreateProfileInput) SetBusinessName(v string) *CreateProfileInput { + s.BusinessName = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateProfileInput) SetClientToken(v string) *CreateProfileInput { + s.ClientToken = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreateProfileInput) SetEmail(v string) *CreateProfileInput { + s.Email = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *CreateProfileInput) SetLogging(v string) *CreateProfileInput { + s.Logging = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProfileInput) SetName(v string) *CreateProfileInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreateProfileInput) SetPhone(v string) *CreateProfileInput { + s.Phone = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateProfileInput) SetTags(v []*Tag) *CreateProfileInput { + s.Tags = v + return s +} + +type CreateProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp representing the time the profile was created. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Returns whether or not logging is turned on for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns the name of the profile, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for the profile. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 CreateProfileOutput) 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 CreateProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *CreateProfileOutput) SetBusinessName(v string) *CreateProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateProfileOutput) SetCreatedAt(v time.Time) *CreateProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *CreateProfileOutput) SetEmail(v string) *CreateProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *CreateProfileOutput) SetLogGroupName(v string) *CreateProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *CreateProfileOutput) SetLogging(v string) *CreateProfileOutput { + s.Logging = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateProfileOutput) SetName(v string) *CreateProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *CreateProfileOutput) SetPhone(v string) *CreateProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *CreateProfileOutput) SetProfileArn(v string) *CreateProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *CreateProfileOutput) SetProfileId(v string) *CreateProfileOutput { + s.ProfileId = &v + return s +} + +type CreateTransformerInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Specifies the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Specifies a sample EDI document that is used by a transformer as a guide + // for processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + Tags []*Tag `locationName:"tags" 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 CreateTransformerInput) 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 CreateTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTransformerInput"} + if s.EdiType == nil { + invalidParams.Add(request.NewErrParamRequired("EdiType")) + } + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.MappingTemplate == nil { + invalidParams.Add(request.NewErrParamRequired("MappingTemplate")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + 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 +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTransformerInput) SetClientToken(v string) *CreateTransformerInput { + s.ClientToken = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *CreateTransformerInput) SetEdiType(v *EdiType) *CreateTransformerInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *CreateTransformerInput) SetFileFormat(v string) *CreateTransformerInput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *CreateTransformerInput) SetMappingTemplate(v string) *CreateTransformerInput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTransformerInput) SetName(v string) *CreateTransformerInput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *CreateTransformerInput) SetSampleDocument(v string) *CreateTransformerInput { + s.SampleDocument = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTransformerInput) SetTags(v []*Tag) *CreateTransformerInput { + s.Tags = v + return s +} + +type CreateTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 CreateTransformerOutput) 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 CreateTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateTransformerOutput) SetCreatedAt(v time.Time) *CreateTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *CreateTransformerOutput) SetEdiType(v *EdiType) *CreateTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *CreateTransformerOutput) SetFileFormat(v string) *CreateTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *CreateTransformerOutput) SetMappingTemplate(v string) *CreateTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateTransformerOutput) SetName(v string) *CreateTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *CreateTransformerOutput) SetSampleDocument(v string) *CreateTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateTransformerOutput) SetStatus(v string) *CreateTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *CreateTransformerOutput) SetTransformerArn(v string) *CreateTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *CreateTransformerOutput) SetTransformerId(v string) *CreateTransformerOutput { + s.TransformerId = &v + return s +} + +type DeleteCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" 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 DeleteCapabilityInput) 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 DeleteCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *DeleteCapabilityInput) SetCapabilityId(v string) *DeleteCapabilityInput { + s.CapabilityId = &v + return s +} + +type DeleteCapabilityOutput 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 DeleteCapabilityOutput) 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 DeleteCapabilityOutput) GoString() string { + return s.String() +} + +type DeletePartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" 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 DeletePartnershipInput) 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 DeletePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeletePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeletePartnershipInput"} + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *DeletePartnershipInput) SetPartnershipId(v string) *DeletePartnershipInput { + s.PartnershipId = &v + return s +} + +type DeletePartnershipOutput 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 DeletePartnershipOutput) 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 DeletePartnershipOutput) GoString() string { + return s.String() +} + +type DeleteProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 DeleteProfileInput) 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 DeleteProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProfileInput"} + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProfileId sets the ProfileId field's value. +func (s *DeleteProfileInput) SetProfileId(v string) *DeleteProfileInput { + s.ProfileId = &v + return s +} + +type DeleteProfileOutput 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 DeleteProfileOutput) 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 DeleteProfileOutput) GoString() string { + return s.String() +} + +type DeleteTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 DeleteTransformerInput) 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 DeleteTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTransformerInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *DeleteTransformerInput) SetTransformerId(v string) *DeleteTransformerInput { + s.TransformerId = &v + return s +} + +type DeleteTransformerOutput 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 DeleteTransformerOutput) 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 DeleteTransformerOutput) GoString() string { + return s.String() +} + +// Specifies the details for the EDI (electronic data interchange) transformation. +type EdiConfiguration struct { + _ struct{} `type:"structure"` + + // Contains the Amazon S3 bucket and prefix for the location of the input file, + // which is contained in an S3Location object. + // + // InputLocation is a required field + InputLocation *S3Location `locationName:"inputLocation" type:"structure" required:"true"` + + // Contains the Amazon S3 bucket and prefix for the location of the output file, + // which is contained in an S3Location object. + // + // OutputLocation is a required field + OutputLocation *S3Location `locationName:"outputLocation" type:"structure" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *EdiType `locationName:"type" 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 EdiConfiguration) 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 EdiConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EdiConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EdiConfiguration"} + if s.InputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("InputLocation")) + } + if s.OutputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("OutputLocation")) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.Type == nil { + invalidParams.Add(request.NewErrParamRequired("Type")) + } + if s.InputLocation != nil { + if err := s.InputLocation.Validate(); err != nil { + invalidParams.AddNested("InputLocation", err.(request.ErrInvalidParams)) + } + } + if s.OutputLocation != nil { + if err := s.OutputLocation.Validate(); err != nil { + invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInputLocation sets the InputLocation field's value. +func (s *EdiConfiguration) SetInputLocation(v *S3Location) *EdiConfiguration { + s.InputLocation = v + return s +} + +// SetOutputLocation sets the OutputLocation field's value. +func (s *EdiConfiguration) SetOutputLocation(v *S3Location) *EdiConfiguration { + s.OutputLocation = v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *EdiConfiguration) SetTransformerId(v string) *EdiConfiguration { + s.TransformerId = &v + return s +} + +// SetType sets the Type field's value. +func (s *EdiConfiguration) SetType(v *EdiType) *EdiConfiguration { + s.Type = v + return s +} + +// Specifies the details for the EDI standard that is being used for the transformer. +// Currently, only X12 is supported. X12 is a set of standards and corresponding +// messages that define specific business documents. +type EdiType struct { + _ struct{} `type:"structure"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + X12Details *X12Details `locationName:"x12Details" 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 EdiType) 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 EdiType) GoString() string { + return s.String() +} + +// SetX12Details sets the X12Details field's value. +func (s *EdiType) SetX12Details(v *X12Details) *EdiType { + s.X12Details = v + return s +} + +type GetCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" 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 GetCapabilityInput) 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 GetCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *GetCapabilityInput) SetCapabilityId(v string) *GetCapabilityInput { + s.CapabilityId = &v + return s +} + +type GetCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns a timestamp for last time the capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// 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 GetCapabilityOutput) 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 GetCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *GetCapabilityOutput) SetCapabilityArn(v string) *GetCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *GetCapabilityOutput) SetCapabilityId(v string) *GetCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *GetCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *GetCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetCapabilityOutput) SetCreatedAt(v time.Time) *GetCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *GetCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *GetCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetCapabilityOutput) SetModifiedAt(v time.Time) *GetCapabilityOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetCapabilityOutput) SetName(v string) *GetCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *GetCapabilityOutput) SetType(v string) *GetCapabilityOutput { + s.Type = &v + return s +} + +type GetPartnershipInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" 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 GetPartnershipInput) 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 GetPartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetPartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPartnershipInput"} + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *GetPartnershipInput) SetPartnershipId(v string) *GetPartnershipInput { + s.PartnershipId = &v + return s +} + +type GetPartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the display name of the partnership + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetPartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique identifier for the partner for this partnership. + TradingPartnerId *string `locationName:"tradingPartnerId" 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 GetPartnershipOutput) 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 GetPartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *GetPartnershipOutput) SetCapabilities(v []*string) *GetPartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetPartnershipOutput) SetCreatedAt(v time.Time) *GetPartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *GetPartnershipOutput) SetEmail(v string) *GetPartnershipOutput { + s.Email = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetPartnershipOutput) SetModifiedAt(v time.Time) *GetPartnershipOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetPartnershipOutput) SetName(v string) *GetPartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *GetPartnershipOutput) SetPartnershipArn(v string) *GetPartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *GetPartnershipOutput) SetPartnershipId(v string) *GetPartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *GetPartnershipOutput) SetPhone(v string) *GetPartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetPartnershipOutput) SetProfileId(v string) *GetPartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *GetPartnershipOutput) SetTradingPartnerId(v string) *GetPartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type GetProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 GetProfileInput) 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 GetProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetProfileInput"} + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetProfileInput) SetProfileId(v string) *GetProfileInput { + s.ProfileId = &v + return s +} + +type GetProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Returns whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns a timestamp for last time the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the profile, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 GetProfileOutput) 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 GetProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *GetProfileOutput) SetBusinessName(v string) *GetProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetProfileOutput) SetCreatedAt(v time.Time) *GetProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *GetProfileOutput) SetEmail(v string) *GetProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *GetProfileOutput) SetLogGroupName(v string) *GetProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *GetProfileOutput) SetLogging(v string) *GetProfileOutput { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetProfileOutput) SetModifiedAt(v time.Time) *GetProfileOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetProfileOutput) SetName(v string) *GetProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *GetProfileOutput) SetPhone(v string) *GetProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *GetProfileOutput) SetProfileArn(v string) *GetProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *GetProfileOutput) SetProfileId(v string) *GetProfileOutput { + s.ProfileId = &v + return s +} + +type GetTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 GetTransformerInput) 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 GetTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTransformerInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerInput) SetTransformerId(v string) *GetTransformerInput { + s.TransformerId = &v + return s +} + +type GetTransformerJobInput struct { + _ struct{} `type:"structure"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" min:"1" type:"string" required:"true"` + + // Specifies the unique, system-generated identifier for a transformer run. + // + // TransformerJobId is a required field + TransformerJobId *string `locationName:"transformerJobId" min:"25" 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 GetTransformerJobInput) 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 GetTransformerJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTransformerJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTransformerJobInput"} + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.TransformerJobId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerJobId")) + } + if s.TransformerJobId != nil && len(*s.TransformerJobId) < 25 { + invalidParams.Add(request.NewErrParamMinLen("TransformerJobId", 25)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerJobInput) SetTransformerId(v string) *GetTransformerJobInput { + s.TransformerId = &v + return s +} + +// SetTransformerJobId sets the TransformerJobId field's value. +func (s *GetTransformerJobInput) SetTransformerJobId(v string) *GetTransformerJobInput { + s.TransformerJobId = &v + return s +} + +type GetTransformerJobOutput struct { + _ struct{} `type:"structure"` + + // Returns an optional error message, which gets populated when the job is not + // run successfully. + Message *string `locationName:"message" type:"string"` + + // Returns the location for the output files. If the caller specified a directory + // for the output, then this contains the full path to the output file, including + // the file name generated by the service. + OutputFiles []*S3Location `locationName:"outputFiles" type:"list"` + + // Returns the current state of the transformer job, either running, succeeded, + // or failed. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerJobStatus"` +} + +// 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 GetTransformerJobOutput) 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 GetTransformerJobOutput) GoString() string { + return s.String() +} + +// SetMessage sets the Message field's value. +func (s *GetTransformerJobOutput) SetMessage(v string) *GetTransformerJobOutput { + s.Message = &v + return s +} + +// SetOutputFiles sets the OutputFiles field's value. +func (s *GetTransformerJobOutput) SetOutputFiles(v []*S3Location) *GetTransformerJobOutput { + s.OutputFiles = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetTransformerJobOutput) SetStatus(v string) *GetTransformerJobOutput { + s.Status = &v + return s +} + +type GetTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp for last time the transformer was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the transformer, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 GetTransformerOutput) 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 GetTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetTransformerOutput) SetCreatedAt(v time.Time) *GetTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *GetTransformerOutput) SetEdiType(v *EdiType) *GetTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *GetTransformerOutput) SetFileFormat(v string) *GetTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *GetTransformerOutput) SetMappingTemplate(v string) *GetTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *GetTransformerOutput) SetModifiedAt(v time.Time) *GetTransformerOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetTransformerOutput) SetName(v string) *GetTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *GetTransformerOutput) SetSampleDocument(v string) *GetTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetTransformerOutput) SetStatus(v string) *GetTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *GetTransformerOutput) SetTransformerArn(v string) *GetTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *GetTransformerOutput) SetTransformerId(v string) *GetTransformerOutput { + s.TransformerId = &v + return s +} + +// This exception is thrown when an error occurs in the Amazon Web Services +// B2B Data Interchange service. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The server attempts to retry a failed command. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" 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 InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListCapabilitiesInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of capabilities to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesInput) 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 ListCapabilitiesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCapabilitiesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCapabilitiesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListCapabilitiesInput) SetMaxResults(v int64) *ListCapabilitiesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCapabilitiesInput) SetNextToken(v string) *ListCapabilitiesInput { + s.NextToken = &v + return s +} + +type ListCapabilitiesOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + // + // Capabilities is a required field + Capabilities []*CapabilitySummary `locationName:"capabilities" type:"list" required:"true"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListCapabilitiesOutput) 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 ListCapabilitiesOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *ListCapabilitiesOutput) SetCapabilities(v []*CapabilitySummary) *ListCapabilitiesOutput { + s.Capabilities = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListCapabilitiesOutput) SetNextToken(v string) *ListCapabilitiesOutput { + s.NextToken = &v + return s +} + +type ListPartnershipsInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of capabilities to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies the unique, system-generated identifier for the profile connected + // to this partnership. + ProfileId *string `locationName:"profileId" 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 ListPartnershipsInput) 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 ListPartnershipsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPartnershipsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPartnershipsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPartnershipsInput) SetMaxResults(v int64) *ListPartnershipsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPartnershipsInput) SetNextToken(v string) *ListPartnershipsInput { + s.NextToken = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *ListPartnershipsInput) SetProfileId(v string) *ListPartnershipsInput { + s.ProfileId = &v + return s +} + +type ListPartnershipsOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Specifies a list of your partnerships. + // + // Partnerships is a required field + Partnerships []*PartnershipSummary `locationName:"partnerships" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPartnershipsOutput) 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 ListPartnershipsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPartnershipsOutput) SetNextToken(v string) *ListPartnershipsOutput { + s.NextToken = &v + return s +} + +// SetPartnerships sets the Partnerships field's value. +func (s *ListPartnershipsOutput) SetPartnerships(v []*PartnershipSummary) *ListPartnershipsOutput { + s.Partnerships = v + return s +} + +type ListProfilesInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of profiles to return. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesInput) 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 ListProfilesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListProfilesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProfilesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListProfilesInput) SetMaxResults(v int64) *ListProfilesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProfilesInput) SetNextToken(v string) *ListProfilesInput { + s.NextToken = &v + return s +} + +type ListProfilesOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Returns an array of ProfileSummary objects. + // + // Profiles is a required field + Profiles []*ProfileSummary `locationName:"profiles" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListProfilesOutput) 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 ListProfilesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListProfilesOutput) SetNextToken(v string) *ListProfilesOutput { + s.NextToken = &v + return s +} + +// SetProfiles sets the Profiles field's value. +func (s *ListProfilesOutput) SetProfiles(v []*ProfileSummary) *ListProfilesOutput { + s.Profiles = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // Requests the tags associated with a particular Amazon Resource Name (ARN). + // An ARN is an identifier for a specific Amazon Web Services resource, such + // as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *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 ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *ListTagsForResourceInput) SetResourceARN(v string) *ListTagsForResourceInput { + s.ResourceARN = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // Returns the key-value pairs assigned to ARNs that you can use to group and + // search for resources by type. You can attach this metadata to resources (capabilities, + // partnerships, and so on) for any purpose. + Tags []*Tag `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 ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListTransformersInput struct { + _ struct{} `type:"structure"` + + // Specifies the number of items to return for the API response. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersInput) 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 ListTransformersInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTransformersInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTransformersInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTransformersInput) SetMaxResults(v int64) *ListTransformersInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTransformersInput) SetNextToken(v string) *ListTransformersInput { + s.NextToken = &v + return s +} + +type ListTransformersOutput struct { + _ struct{} `type:"structure"` + + // When additional results are obtained from the command, a NextToken parameter + // is returned in the output. You can then pass the NextToken parameter in a + // subsequent command to continue listing additional resources. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // Returns an array of one or more transformer objects. + // + // For each transformer, a TransformerSummary object is returned. The TransformerSummary + // contains all the details for a specific transformer. + // + // Transformers is a required field + Transformers []*TransformerSummary `locationName:"transformers" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTransformersOutput) 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 ListTransformersOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTransformersOutput) SetNextToken(v string) *ListTransformersOutput { + s.NextToken = &v + return s +} + +// SetTransformers sets the Transformers field's value. +func (s *ListTransformersOutput) SetTransformers(v []*TransformerSummary) *ListTransformersOutput { + s.Transformers = v + return s +} + +// A structure that contains the details for a partnership. Partnerships link +// trading partners with your profile and a specific transformer, so that the +// EDI (electronic data interchange) documents that they upload to Amazon S3 +// can be processed according to their specifications. +type PartnershipSummary struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp for creation date and time of the partnership. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the partnership. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" 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 PartnershipSummary) 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 PartnershipSummary) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *PartnershipSummary) SetCapabilities(v []*string) *PartnershipSummary { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *PartnershipSummary) SetCreatedAt(v time.Time) *PartnershipSummary { + s.CreatedAt = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *PartnershipSummary) SetModifiedAt(v time.Time) *PartnershipSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *PartnershipSummary) SetName(v string) *PartnershipSummary { + s.Name = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *PartnershipSummary) SetPartnershipId(v string) *PartnershipSummary { + s.PartnershipId = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *PartnershipSummary) SetProfileId(v string) *PartnershipSummary { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *PartnershipSummary) SetTradingPartnerId(v string) *PartnershipSummary { + s.TradingPartnerId = &v + return s +} + +// Contains the details for a profile. Profiles contain basic information about +// you and your business. +type ProfileSummary struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns the timestamp for creation date and time of the profile. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Specifies whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns the timestamp that identifies the most recent date and time that + // the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the display name for profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 ProfileSummary) 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 ProfileSummary) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *ProfileSummary) SetBusinessName(v string) *ProfileSummary { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *ProfileSummary) SetCreatedAt(v time.Time) *ProfileSummary { + s.CreatedAt = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *ProfileSummary) SetLogGroupName(v string) *ProfileSummary { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *ProfileSummary) SetLogging(v string) *ProfileSummary { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *ProfileSummary) SetModifiedAt(v time.Time) *ProfileSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *ProfileSummary) SetName(v string) *ProfileSummary { + s.Name = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *ProfileSummary) SetProfileId(v string) *ProfileSummary { + s.ProfileId = &v + return s +} + +// Occurs when the requested resource does not exist, or cannot be found. In +// some cases, the resource exists in a region other than the region specified +// in the API call. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Specifies the details for the Amazon S3 file location that is being used +// with Amazon Web Services B2BI Data Interchange. File locations in Amazon +// S3 are identified using a combination of the bucket and key. +type S3Location struct { + _ struct{} `type:"structure"` + + // Specifies the name of the Amazon S3 bucket. + BucketName *string `locationName:"bucketName" min:"3" type:"string"` + + // Specifies the Amazon S3 key for the file location. + Key *string `locationName:"key" 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 S3Location) 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 S3Location) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Location) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Location"} + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3Location) SetBucketName(v string) *S3Location { + s.BucketName = &v + return s +} + +// SetKey sets the Key field's value. +func (s *S3Location) SetKey(v string) *S3Location { + s.Key = &v + return s +} + +// Occurs when the calling command attempts to exceed one of the service quotas, +// for example trying to create a capability when you already have the maximum +// number of capabilities allowed. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The quota that was exceeded, which caused the exception. + // + // QuotaCode is a required field + QuotaCode *string `locationName:"quotaCode" type:"string" required:"true"` + + // The ID for the resource that exceeded the quota, which caused the exception. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The resource type (profile, partnership, transformer, or capability) that + // exceeded the quota, which caused the exception. + // + // ResourceType is a required field + ResourceType *string `locationName:"resourceType" type:"string" required:"true"` + + // The code responsible for exceeding the quota, which caused the exception. + // + // ServiceCode is a required field + ServiceCode *string `locationName:"serviceCode" 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 ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type StartTransformerJobInput struct { + _ struct{} `type:"structure"` + + // Reserved for future use. + ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` + + // Specifies the location of the input file for the transformation. The location + // consists of an Amazon S3 bucket and prefix. + // + // InputFile is a required field + InputFile *S3Location `locationName:"inputFile" type:"structure" required:"true"` + + // Specifies the location of the output file for the transformation. The location + // consists of an Amazon S3 bucket and prefix. + // + // OutputLocation is a required field + OutputLocation *S3Location `locationName:"outputLocation" type:"structure" required:"true"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 StartTransformerJobInput) 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 StartTransformerJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartTransformerJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartTransformerJobInput"} + if s.InputFile == nil { + invalidParams.Add(request.NewErrParamRequired("InputFile")) + } + if s.OutputLocation == nil { + invalidParams.Add(request.NewErrParamRequired("OutputLocation")) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + if s.InputFile != nil { + if err := s.InputFile.Validate(); err != nil { + invalidParams.AddNested("InputFile", err.(request.ErrInvalidParams)) + } + } + if s.OutputLocation != nil { + if err := s.OutputLocation.Validate(); err != nil { + invalidParams.AddNested("OutputLocation", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *StartTransformerJobInput) SetClientToken(v string) *StartTransformerJobInput { + s.ClientToken = &v + return s +} + +// SetInputFile sets the InputFile field's value. +func (s *StartTransformerJobInput) SetInputFile(v *S3Location) *StartTransformerJobInput { + s.InputFile = v + return s +} + +// SetOutputLocation sets the OutputLocation field's value. +func (s *StartTransformerJobInput) SetOutputLocation(v *S3Location) *StartTransformerJobInput { + s.OutputLocation = v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *StartTransformerJobInput) SetTransformerId(v string) *StartTransformerJobInput { + s.TransformerId = &v + return s +} + +type StartTransformerJobOutput struct { + _ struct{} `type:"structure"` + + // Returns the unique, system-generated identifier for a transformer run. + // + // TransformerJobId is a required field + TransformerJobId *string `locationName:"transformerJobId" min:"25" 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 StartTransformerJobOutput) 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 StartTransformerJobOutput) GoString() string { + return s.String() +} + +// SetTransformerJobId sets the TransformerJobId field's value. +func (s *StartTransformerJobOutput) SetTransformerJobId(v string) *StartTransformerJobOutput { + s.TransformerJobId = &v + return s +} + +// Creates a key-value pair for a specific resource. Tags are metadata that +// you can use to search for and group a resource for various purposes. You +// can apply tags to capabilities, partnerships, profiles and transformers. +// A tag key can take more than one value. For example, to group capabilities +// for accounting purposes, you might create a tag called Group and assign the +// values Research and Accounting to that group. +type Tag struct { + _ struct{} `type:"structure"` + + // Specifies the name assigned to the tag that you create. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // Contains one or more values that you assigned to the key name that you create. + // + // Value is a required field + Value *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) 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 Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if 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 +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *TagResourceInput) SetResourceARN(v string) *TagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +type TestMappingInput struct { + _ struct{} `type:"structure"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specify the EDI (electronic data interchange) file that is used as input + // for the transform. + // + // InputFileContent is a required field + InputFileContent *string `locationName:"inputFileContent" type:"string" required:"true"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" 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 TestMappingInput) 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 TestMappingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TestMappingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TestMappingInput"} + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.InputFileContent == nil { + invalidParams.Add(request.NewErrParamRequired("InputFileContent")) + } + if s.MappingTemplate == nil { + invalidParams.Add(request.NewErrParamRequired("MappingTemplate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TestMappingInput) SetFileFormat(v string) *TestMappingInput { + s.FileFormat = &v + return s +} + +// SetInputFileContent sets the InputFileContent field's value. +func (s *TestMappingInput) SetInputFileContent(v string) *TestMappingInput { + s.InputFileContent = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *TestMappingInput) SetMappingTemplate(v string) *TestMappingInput { + s.MappingTemplate = &v + return s +} + +type TestMappingOutput struct { + _ struct{} `type:"structure"` + + // Returns a string for the mapping that can be used to identify the mapping. + // Similar to a fingerprint + // + // MappedFileContent is a required field + MappedFileContent *string `locationName:"mappedFileContent" 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 TestMappingOutput) 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 TestMappingOutput) GoString() string { + return s.String() +} + +// SetMappedFileContent sets the MappedFileContent field's value. +func (s *TestMappingOutput) SetMappedFileContent(v string) *TestMappingOutput { + s.MappedFileContent = &v + return s +} + +type TestParsingInput struct { + _ struct{} `type:"structure"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Specifies an S3Location object, which contains the Amazon S3 bucket and prefix + // for the location of the input file. + // + // InputFile is a required field + InputFile *S3Location `locationName:"inputFile" 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 TestParsingInput) 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 TestParsingInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TestParsingInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TestParsingInput"} + if s.EdiType == nil { + invalidParams.Add(request.NewErrParamRequired("EdiType")) + } + if s.FileFormat == nil { + invalidParams.Add(request.NewErrParamRequired("FileFormat")) + } + if s.InputFile == nil { + invalidParams.Add(request.NewErrParamRequired("InputFile")) + } + if s.InputFile != nil { + if err := s.InputFile.Validate(); err != nil { + invalidParams.AddNested("InputFile", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdiType sets the EdiType field's value. +func (s *TestParsingInput) SetEdiType(v *EdiType) *TestParsingInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TestParsingInput) SetFileFormat(v string) *TestParsingInput { + s.FileFormat = &v + return s +} + +// SetInputFile sets the InputFile field's value. +func (s *TestParsingInput) SetInputFile(v *S3Location) *TestParsingInput { + s.InputFile = v + return s +} + +type TestParsingOutput struct { + _ struct{} `type:"structure"` + + // Returns the contents of the input file being tested, parsed according to + // the specified EDI (electronic data interchange) type. + // + // ParsedFileContent is a required field + ParsedFileContent *string `locationName:"parsedFileContent" 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 TestParsingOutput) 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 TestParsingOutput) GoString() string { + return s.String() +} + +// SetParsedFileContent sets the ParsedFileContent field's value. +func (s *TestParsingOutput) SetParsedFileContent(v string) *TestParsingOutput { + s.ParsedFileContent = &v + return s +} + +// The request was denied due to throttling: the data speed and rendering may +// be limited depending on various parameters and conditions. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" min:"10" type:"string"` + + // The server attempts to retry a command that was throttled. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" 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 ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Contains the details for a transformer object. Transformers describe how +// to process the incoming EDI (electronic data interchange) documents, and +// extract the necessary information. +type TransformerSummary struct { + _ struct{} `type:"structure"` + + // Returns a timestamp indicating when the transformer was created. For example, + // 2023-07-20T19:58:44.624Z. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp representing the date and time for the most recent change + // for the transformer object. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the descriptive name for the transformer. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 TransformerSummary) 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 TransformerSummary) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *TransformerSummary) SetCreatedAt(v time.Time) *TransformerSummary { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *TransformerSummary) SetEdiType(v *EdiType) *TransformerSummary { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *TransformerSummary) SetFileFormat(v string) *TransformerSummary { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *TransformerSummary) SetMappingTemplate(v string) *TransformerSummary { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *TransformerSummary) SetModifiedAt(v time.Time) *TransformerSummary { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *TransformerSummary) SetName(v string) *TransformerSummary { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *TransformerSummary) SetSampleDocument(v string) *TransformerSummary { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *TransformerSummary) SetStatus(v string) *TransformerSummary { + s.Status = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *TransformerSummary) SetTransformerId(v string) *TransformerSummary { + s.TransformerId = &v + return s +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // Specifies an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // ResourceARN is a required field + ResourceARN *string `min:"1" type:"string" required:"true"` + + // Specifies the key-value pairs assigned to ARNs that you can use to group + // and search for resources by type. You can attach this metadata to resources + // (capabilities, partnerships, and so on) for any purpose. + // + // TagKeys is a required field + TagKeys []*string `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceARN == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceARN")) + } + if s.ResourceARN != nil && len(*s.ResourceARN) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceARN", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceARN sets the ResourceARN field's value. +func (s *UntagResourceInput) SetResourceARN(v string) *UntagResourceInput { + s.ResourceARN = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateCapabilityInput struct { + _ struct{} `type:"structure"` + + // Specifies a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Specifies a structure that contains the details for a capability. + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure"` + + // Specifies one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Specifies a new name for the capability, to replace the existing name. + Name *string `locationName:"name" 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 UpdateCapabilityInput) 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 UpdateCapabilityInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateCapabilityInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateCapabilityInput"} + if s.CapabilityId == nil { + invalidParams.Add(request.NewErrParamRequired("CapabilityId")) + } + if s.CapabilityId != nil && len(*s.CapabilityId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CapabilityId", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Configuration != nil { + if err := s.Configuration.Validate(); err != nil { + invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams)) + } + } + if s.InstructionsDocuments != nil { + for i, v := range s.InstructionsDocuments { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstructionsDocuments", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *UpdateCapabilityInput) SetCapabilityId(v string) *UpdateCapabilityInput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateCapabilityInput) SetConfiguration(v *CapabilityConfiguration) *UpdateCapabilityInput { + s.Configuration = v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *UpdateCapabilityInput) SetInstructionsDocuments(v []*S3Location) *UpdateCapabilityInput { + s.InstructionsDocuments = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCapabilityInput) SetName(v string) *UpdateCapabilityInput { + s.Name = &v + return s +} + +type UpdateCapabilityOutput struct { + _ struct{} `type:"structure"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // CapabilityArn is a required field + CapabilityArn *string `locationName:"capabilityArn" min:"1" type:"string" required:"true"` + + // Returns a system-assigned unique identifier for the capability. + // + // CapabilityId is a required field + CapabilityId *string `locationName:"capabilityId" min:"1" type:"string" required:"true"` + + // Returns a structure that contains the details for a capability. + // + // Configuration is a required field + Configuration *CapabilityConfiguration `locationName:"configuration" type:"structure" required:"true"` + + // Returns a timestamp for creation date and time of the capability. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns one or more locations in Amazon S3, each specifying an EDI document + // that can be used with this capability. Each item contains the name of the + // bucket and the key, to identify the document's location. + InstructionsDocuments []*S3Location `locationName:"instructionsDocuments" type:"list"` + + // Returns a timestamp for last time the capability was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the capability, used to identify it. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the type of the capability. Currently, only edi is supported. + // + // Type is a required field + Type *string `locationName:"type" type:"string" required:"true" enum:"CapabilityType"` +} + +// 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 UpdateCapabilityOutput) 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 UpdateCapabilityOutput) GoString() string { + return s.String() +} + +// SetCapabilityArn sets the CapabilityArn field's value. +func (s *UpdateCapabilityOutput) SetCapabilityArn(v string) *UpdateCapabilityOutput { + s.CapabilityArn = &v + return s +} + +// SetCapabilityId sets the CapabilityId field's value. +func (s *UpdateCapabilityOutput) SetCapabilityId(v string) *UpdateCapabilityOutput { + s.CapabilityId = &v + return s +} + +// SetConfiguration sets the Configuration field's value. +func (s *UpdateCapabilityOutput) SetConfiguration(v *CapabilityConfiguration) *UpdateCapabilityOutput { + s.Configuration = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateCapabilityOutput) SetCreatedAt(v time.Time) *UpdateCapabilityOutput { + s.CreatedAt = &v + return s +} + +// SetInstructionsDocuments sets the InstructionsDocuments field's value. +func (s *UpdateCapabilityOutput) SetInstructionsDocuments(v []*S3Location) *UpdateCapabilityOutput { + s.InstructionsDocuments = v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateCapabilityOutput) SetModifiedAt(v time.Time) *UpdateCapabilityOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateCapabilityOutput) SetName(v string) *UpdateCapabilityOutput { + s.Name = &v + return s +} + +// SetType sets the Type field's value. +func (s *UpdateCapabilityOutput) SetType(v string) *UpdateCapabilityOutput { + s.Type = &v + return s +} + +type UpdatePartnershipInput struct { + _ struct{} `type:"structure"` + + // List of the capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // The name of the partnership, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" 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 UpdatePartnershipInput) 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 UpdatePartnershipInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePartnershipInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePartnershipInput"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.PartnershipId == nil { + invalidParams.Add(request.NewErrParamRequired("PartnershipId")) + } + if s.PartnershipId != nil && len(*s.PartnershipId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PartnershipId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCapabilities sets the Capabilities field's value. +func (s *UpdatePartnershipInput) SetCapabilities(v []*string) *UpdatePartnershipInput { + s.Capabilities = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdatePartnershipInput) SetName(v string) *UpdatePartnershipInput { + s.Name = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *UpdatePartnershipInput) SetPartnershipId(v string) *UpdatePartnershipInput { + s.PartnershipId = &v + return s +} + +type UpdatePartnershipOutput struct { + _ struct{} `type:"structure"` + + // Returns one or more capabilities associated with this partnership. + Capabilities []*string `locationName:"capabilities" type:"list"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this trading partner. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePartnershipOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns a timestamp that identifies the most recent date and time that the + // partnership was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the partnership, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // PartnershipArn is a required field + PartnershipArn *string `locationName:"partnershipArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a partnership. + // + // PartnershipId is a required field + PartnershipId *string `locationName:"partnershipId" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the partnership. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdatePartnershipOutput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Returns the unique, system-generated identifier for the profile connected + // to this partnership. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for a trading partner. + TradingPartnerId *string `locationName:"tradingPartnerId" 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 UpdatePartnershipOutput) 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 UpdatePartnershipOutput) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *UpdatePartnershipOutput) SetCapabilities(v []*string) *UpdatePartnershipOutput { + s.Capabilities = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdatePartnershipOutput) SetCreatedAt(v time.Time) *UpdatePartnershipOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdatePartnershipOutput) SetEmail(v string) *UpdatePartnershipOutput { + s.Email = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdatePartnershipOutput) SetModifiedAt(v time.Time) *UpdatePartnershipOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdatePartnershipOutput) SetName(v string) *UpdatePartnershipOutput { + s.Name = &v + return s +} + +// SetPartnershipArn sets the PartnershipArn field's value. +func (s *UpdatePartnershipOutput) SetPartnershipArn(v string) *UpdatePartnershipOutput { + s.PartnershipArn = &v + return s +} + +// SetPartnershipId sets the PartnershipId field's value. +func (s *UpdatePartnershipOutput) SetPartnershipId(v string) *UpdatePartnershipOutput { + s.PartnershipId = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdatePartnershipOutput) SetPhone(v string) *UpdatePartnershipOutput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdatePartnershipOutput) SetProfileId(v string) *UpdatePartnershipOutput { + s.ProfileId = &v + return s +} + +// SetTradingPartnerId sets the TradingPartnerId field's value. +func (s *UpdatePartnershipOutput) SetTradingPartnerId(v string) *UpdatePartnershipOutput { + s.TradingPartnerId = &v + return s +} + +type UpdateProfileInput struct { + _ struct{} `type:"structure"` + + // Specifies the name for the business associated with this profile. + BusinessName *string `locationName:"businessName" min:"1" type:"string"` + + // Specifies the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileInput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // The name of the profile, used to identify it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileInput's + // String and GoString methods. + Phone *string `locationName:"phone" min:"7" type:"string" sensitive:"true"` + + // Specifies the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 UpdateProfileInput) 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 UpdateProfileInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateProfileInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateProfileInput"} + if s.BusinessName != nil && len(*s.BusinessName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BusinessName", 1)) + } + if s.Email != nil && len(*s.Email) < 5 { + invalidParams.Add(request.NewErrParamMinLen("Email", 5)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.Phone != nil && len(*s.Phone) < 7 { + invalidParams.Add(request.NewErrParamMinLen("Phone", 7)) + } + if s.ProfileId == nil { + invalidParams.Add(request.NewErrParamRequired("ProfileId")) + } + if s.ProfileId != nil && len(*s.ProfileId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ProfileId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBusinessName sets the BusinessName field's value. +func (s *UpdateProfileInput) SetBusinessName(v string) *UpdateProfileInput { + s.BusinessName = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdateProfileInput) SetEmail(v string) *UpdateProfileInput { + s.Email = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProfileInput) SetName(v string) *UpdateProfileInput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdateProfileInput) SetPhone(v string) *UpdateProfileInput { + s.Phone = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdateProfileInput) SetProfileId(v string) *UpdateProfileInput { + s.ProfileId = &v + return s +} + +type UpdateProfileOutput struct { + _ struct{} `type:"structure"` + + // Returns the name for the business associated with this profile. + // + // BusinessName is a required field + BusinessName *string `locationName:"businessName" min:"1" type:"string" required:"true"` + + // Returns a timestamp for creation date and time of the profile. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the email address associated with this customer profile. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileOutput's + // String and GoString methods. + Email *string `locationName:"email" min:"5" type:"string" sensitive:"true"` + + // Returns the name of the logging group. + LogGroupName *string `locationName:"logGroupName" min:"1" type:"string"` + + // Specifies whether or not logging is enabled for this profile. + Logging *string `locationName:"logging" type:"string" enum:"Logging"` + + // Returns a timestamp for last time the profile was modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601"` + + // Returns the name of the profile. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns the phone number associated with the profile. + // + // Phone is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateProfileOutput's + // String and GoString methods. + // + // Phone is a required field + Phone *string `locationName:"phone" min:"7" type:"string" required:"true" sensitive:"true"` + + // Returns an Amazon Resource Name (ARN) for the profile. + // + // ProfileArn is a required field + ProfileArn *string `locationName:"profileArn" min:"1" type:"string" required:"true"` + + // Returns the unique, system-generated identifier for the profile. + // + // ProfileId is a required field + ProfileId *string `locationName:"profileId" 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 UpdateProfileOutput) 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 UpdateProfileOutput) GoString() string { + return s.String() +} + +// SetBusinessName sets the BusinessName field's value. +func (s *UpdateProfileOutput) SetBusinessName(v string) *UpdateProfileOutput { + s.BusinessName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateProfileOutput) SetCreatedAt(v time.Time) *UpdateProfileOutput { + s.CreatedAt = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *UpdateProfileOutput) SetEmail(v string) *UpdateProfileOutput { + s.Email = &v + return s +} + +// SetLogGroupName sets the LogGroupName field's value. +func (s *UpdateProfileOutput) SetLogGroupName(v string) *UpdateProfileOutput { + s.LogGroupName = &v + return s +} + +// SetLogging sets the Logging field's value. +func (s *UpdateProfileOutput) SetLogging(v string) *UpdateProfileOutput { + s.Logging = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateProfileOutput) SetModifiedAt(v time.Time) *UpdateProfileOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateProfileOutput) SetName(v string) *UpdateProfileOutput { + s.Name = &v + return s +} + +// SetPhone sets the Phone field's value. +func (s *UpdateProfileOutput) SetPhone(v string) *UpdateProfileOutput { + s.Phone = &v + return s +} + +// SetProfileArn sets the ProfileArn field's value. +func (s *UpdateProfileOutput) SetProfileArn(v string) *UpdateProfileOutput { + s.ProfileArn = &v + return s +} + +// SetProfileId sets the ProfileId field's value. +func (s *UpdateProfileOutput) SetProfileId(v string) *UpdateProfileOutput { + s.ProfileId = &v + return s +} + +type UpdateTransformerInput struct { + _ struct{} `type:"structure"` + + // Specifies the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + EdiType *EdiType `locationName:"ediType" type:"structure"` + + // Specifies that the currently supported file formats for EDI transformations + // are JSON and XML. + FileFormat *string `locationName:"fileFormat" type:"string" enum:"FileFormat"` + + // Specifies the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + MappingTemplate *string `locationName:"mappingTemplate" type:"string"` + + // Specify a new name for the transformer, if you want to update it. + Name *string `locationName:"name" min:"1" type:"string"` + + // Specifies a sample EDI document that is used by a transformer as a guide + // for processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Specifies the transformer's status. You can update the state of the transformer, + // from active to inactive, or inactive to active. + Status *string `locationName:"status" type:"string" enum:"TransformerStatus"` + + // Specifies the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 UpdateTransformerInput) 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 UpdateTransformerInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTransformerInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTransformerInput"} + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.TransformerId == nil { + invalidParams.Add(request.NewErrParamRequired("TransformerId")) + } + if s.TransformerId != nil && len(*s.TransformerId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TransformerId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEdiType sets the EdiType field's value. +func (s *UpdateTransformerInput) SetEdiType(v *EdiType) *UpdateTransformerInput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *UpdateTransformerInput) SetFileFormat(v string) *UpdateTransformerInput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *UpdateTransformerInput) SetMappingTemplate(v string) *UpdateTransformerInput { + s.MappingTemplate = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateTransformerInput) SetName(v string) *UpdateTransformerInput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *UpdateTransformerInput) SetSampleDocument(v string) *UpdateTransformerInput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateTransformerInput) SetStatus(v string) *UpdateTransformerInput { + s.Status = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *UpdateTransformerInput) SetTransformerId(v string) *UpdateTransformerInput { + s.TransformerId = &v + return s +} + +type UpdateTransformerOutput struct { + _ struct{} `type:"structure"` + + // Returns a timestamp for creation date and time of the transformer. + // + // CreatedAt is a required field + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the details for the EDI standard that is being used for the transformer. + // Currently, only X12 is supported. X12 is a set of standards and corresponding + // messages that define specific business documents. + // + // EdiType is a required field + EdiType *EdiType `locationName:"ediType" type:"structure" required:"true"` + + // Returns that the currently supported file formats for EDI transformations + // are JSON and XML. + // + // FileFormat is a required field + FileFormat *string `locationName:"fileFormat" type:"string" required:"true" enum:"FileFormat"` + + // Returns the name of the mapping template for the transformer. This template + // is used to convert the input document into the correct set of objects. + // + // MappingTemplate is a required field + MappingTemplate *string `locationName:"mappingTemplate" type:"string" required:"true"` + + // Returns a timestamp for last time the transformer was modified. + // + // ModifiedAt is a required field + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp" timestampFormat:"iso8601" required:"true"` + + // Returns the name of the transformer. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` + + // Returns a sample EDI document that is used by a transformer as a guide for + // processing the EDI data. + SampleDocument *string `locationName:"sampleDocument" type:"string"` + + // Returns the state of the newly created transformer. The transformer can be + // either active or inactive. For the transformer to be used in a capability, + // its status must active. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"TransformerStatus"` + + // Returns an Amazon Resource Name (ARN) for a specific Amazon Web Services + // resource, such as a capability, partnership, profile, or transformer. + // + // TransformerArn is a required field + TransformerArn *string `locationName:"transformerArn" min:"1" type:"string" required:"true"` + + // Returns the system-assigned unique identifier for the transformer. + // + // TransformerId is a required field + TransformerId *string `locationName:"transformerId" 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 UpdateTransformerOutput) 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 UpdateTransformerOutput) GoString() string { + return s.String() +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateTransformerOutput) SetCreatedAt(v time.Time) *UpdateTransformerOutput { + s.CreatedAt = &v + return s +} + +// SetEdiType sets the EdiType field's value. +func (s *UpdateTransformerOutput) SetEdiType(v *EdiType) *UpdateTransformerOutput { + s.EdiType = v + return s +} + +// SetFileFormat sets the FileFormat field's value. +func (s *UpdateTransformerOutput) SetFileFormat(v string) *UpdateTransformerOutput { + s.FileFormat = &v + return s +} + +// SetMappingTemplate sets the MappingTemplate field's value. +func (s *UpdateTransformerOutput) SetMappingTemplate(v string) *UpdateTransformerOutput { + s.MappingTemplate = &v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *UpdateTransformerOutput) SetModifiedAt(v time.Time) *UpdateTransformerOutput { + s.ModifiedAt = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateTransformerOutput) SetName(v string) *UpdateTransformerOutput { + s.Name = &v + return s +} + +// SetSampleDocument sets the SampleDocument field's value. +func (s *UpdateTransformerOutput) SetSampleDocument(v string) *UpdateTransformerOutput { + s.SampleDocument = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateTransformerOutput) SetStatus(v string) *UpdateTransformerOutput { + s.Status = &v + return s +} + +// SetTransformerArn sets the TransformerArn field's value. +func (s *UpdateTransformerOutput) SetTransformerArn(v string) *UpdateTransformerOutput { + s.TransformerArn = &v + return s +} + +// SetTransformerId sets the TransformerId field's value. +func (s *UpdateTransformerOutput) SetTransformerId(v string) *UpdateTransformerOutput { + s.TransformerId = &v + return s +} + +// Occurs when a B2BI object cannot be validated against a request from another +// object. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" min:"10" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A structure that contains the X12 transaction set and version. The X12 structure +// is used when the system transforms an EDI (electronic data interchange) file. +type X12Details struct { + _ struct{} `type:"structure"` + + // Returns an enumerated type where each value identifies an X12 transaction + // set. Transaction sets are maintained by the X12 Accredited Standards Committee. + TransactionSet *string `locationName:"transactionSet" type:"string" enum:"X12TransactionSet"` + + // Returns the version to use for the specified X12 transaction set. Supported + // versions are 4010, 4030, and 5010. + Version *string `locationName:"version" type:"string" enum:"X12Version"` +} + +// 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 X12Details) 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 X12Details) GoString() string { + return s.String() +} + +// SetTransactionSet sets the TransactionSet field's value. +func (s *X12Details) SetTransactionSet(v string) *X12Details { + s.TransactionSet = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *X12Details) SetVersion(v string) *X12Details { + s.Version = &v + return s +} + +const ( + // CapabilityTypeEdi is a CapabilityType enum value + CapabilityTypeEdi = "edi" +) + +// CapabilityType_Values returns all elements of the CapabilityType enum +func CapabilityType_Values() []string { + return []string{ + CapabilityTypeEdi, + } +} + +const ( + // FileFormatXml is a FileFormat enum value + FileFormatXml = "XML" + + // FileFormatJson is a FileFormat enum value + FileFormatJson = "JSON" +) + +// FileFormat_Values returns all elements of the FileFormat enum +func FileFormat_Values() []string { + return []string{ + FileFormatXml, + FileFormatJson, + } +} + +const ( + // LoggingEnabled is a Logging enum value + LoggingEnabled = "ENABLED" + + // LoggingDisabled is a Logging enum value + LoggingDisabled = "DISABLED" +) + +// Logging_Values returns all elements of the Logging enum +func Logging_Values() []string { + return []string{ + LoggingEnabled, + LoggingDisabled, + } +} + +const ( + // TransformerJobStatusRunning is a TransformerJobStatus enum value + TransformerJobStatusRunning = "running" + + // TransformerJobStatusSucceeded is a TransformerJobStatus enum value + TransformerJobStatusSucceeded = "succeeded" + + // TransformerJobStatusFailed is a TransformerJobStatus enum value + TransformerJobStatusFailed = "failed" +) + +// TransformerJobStatus_Values returns all elements of the TransformerJobStatus enum +func TransformerJobStatus_Values() []string { + return []string{ + TransformerJobStatusRunning, + TransformerJobStatusSucceeded, + TransformerJobStatusFailed, + } +} + +const ( + // TransformerStatusActive is a TransformerStatus enum value + TransformerStatusActive = "active" + + // TransformerStatusInactive is a TransformerStatus enum value + TransformerStatusInactive = "inactive" +) + +// TransformerStatus_Values returns all elements of the TransformerStatus enum +func TransformerStatus_Values() []string { + return []string{ + TransformerStatusActive, + TransformerStatusInactive, + } +} + +const ( + // X12TransactionSetX12110 is a X12TransactionSet enum value + X12TransactionSetX12110 = "X12_110" + + // X12TransactionSetX12180 is a X12TransactionSet enum value + X12TransactionSetX12180 = "X12_180" + + // X12TransactionSetX12204 is a X12TransactionSet enum value + X12TransactionSetX12204 = "X12_204" + + // X12TransactionSetX12210 is a X12TransactionSet enum value + X12TransactionSetX12210 = "X12_210" + + // X12TransactionSetX12214 is a X12TransactionSet enum value + X12TransactionSetX12214 = "X12_214" + + // X12TransactionSetX12215 is a X12TransactionSet enum value + X12TransactionSetX12215 = "X12_215" + + // X12TransactionSetX12310 is a X12TransactionSet enum value + X12TransactionSetX12310 = "X12_310" + + // X12TransactionSetX12315 is a X12TransactionSet enum value + X12TransactionSetX12315 = "X12_315" + + // X12TransactionSetX12322 is a X12TransactionSet enum value + X12TransactionSetX12322 = "X12_322" + + // X12TransactionSetX12404 is a X12TransactionSet enum value + X12TransactionSetX12404 = "X12_404" + + // X12TransactionSetX12410 is a X12TransactionSet enum value + X12TransactionSetX12410 = "X12_410" + + // X12TransactionSetX12820 is a X12TransactionSet enum value + X12TransactionSetX12820 = "X12_820" + + // X12TransactionSetX12824 is a X12TransactionSet enum value + X12TransactionSetX12824 = "X12_824" + + // X12TransactionSetX12830 is a X12TransactionSet enum value + X12TransactionSetX12830 = "X12_830" + + // X12TransactionSetX12846 is a X12TransactionSet enum value + X12TransactionSetX12846 = "X12_846" + + // X12TransactionSetX12850 is a X12TransactionSet enum value + X12TransactionSetX12850 = "X12_850" + + // X12TransactionSetX12852 is a X12TransactionSet enum value + X12TransactionSetX12852 = "X12_852" + + // X12TransactionSetX12855 is a X12TransactionSet enum value + X12TransactionSetX12855 = "X12_855" + + // X12TransactionSetX12856 is a X12TransactionSet enum value + X12TransactionSetX12856 = "X12_856" + + // X12TransactionSetX12860 is a X12TransactionSet enum value + X12TransactionSetX12860 = "X12_860" + + // X12TransactionSetX12861 is a X12TransactionSet enum value + X12TransactionSetX12861 = "X12_861" + + // X12TransactionSetX12864 is a X12TransactionSet enum value + X12TransactionSetX12864 = "X12_864" + + // X12TransactionSetX12940 is a X12TransactionSet enum value + X12TransactionSetX12940 = "X12_940" + + // X12TransactionSetX12990 is a X12TransactionSet enum value + X12TransactionSetX12990 = "X12_990" + + // X12TransactionSetX12997 is a X12TransactionSet enum value + X12TransactionSetX12997 = "X12_997" +) + +// X12TransactionSet_Values returns all elements of the X12TransactionSet enum +func X12TransactionSet_Values() []string { + return []string{ + X12TransactionSetX12110, + X12TransactionSetX12180, + X12TransactionSetX12204, + X12TransactionSetX12210, + X12TransactionSetX12214, + X12TransactionSetX12215, + X12TransactionSetX12310, + X12TransactionSetX12315, + X12TransactionSetX12322, + X12TransactionSetX12404, + X12TransactionSetX12410, + X12TransactionSetX12820, + X12TransactionSetX12824, + X12TransactionSetX12830, + X12TransactionSetX12846, + X12TransactionSetX12850, + X12TransactionSetX12852, + X12TransactionSetX12855, + X12TransactionSetX12856, + X12TransactionSetX12860, + X12TransactionSetX12861, + X12TransactionSetX12864, + X12TransactionSetX12940, + X12TransactionSetX12990, + X12TransactionSetX12997, + } +} + +const ( + // X12VersionVersion4010 is a X12Version enum value + X12VersionVersion4010 = "VERSION_4010" + + // X12VersionVersion4030 is a X12Version enum value + X12VersionVersion4030 = "VERSION_4030" + + // X12VersionVersion5010 is a X12Version enum value + X12VersionVersion5010 = "VERSION_5010" +) + +// X12Version_Values returns all elements of the X12Version enum +func X12Version_Values() []string { + return []string{ + X12VersionVersion4010, + X12VersionVersion4030, + X12VersionVersion5010, + } +} diff --git a/service/b2bi/b2biiface/interface.go b/service/b2bi/b2biiface/interface.go new file mode 100644 index 00000000000..e438272d326 --- /dev/null +++ b/service/b2bi/b2biiface/interface.go @@ -0,0 +1,184 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package b2biiface provides an interface to enable mocking the AWS B2B Data Interchange service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package b2biiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/b2bi" +) + +// B2biAPI provides an interface to enable mocking the +// b2bi.B2bi service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS B2B Data Interchange. +// func myFunc(svc b2biiface.B2biAPI) bool { +// // Make svc.CreateCapability request +// } +// +// func main() { +// sess := session.New() +// svc := b2bi.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockB2biClient struct { +// b2biiface.B2biAPI +// } +// func (m *mockB2biClient) CreateCapability(input *b2bi.CreateCapabilityInput) (*b2bi.CreateCapabilityOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockB2biClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type B2biAPI interface { + CreateCapability(*b2bi.CreateCapabilityInput) (*b2bi.CreateCapabilityOutput, error) + CreateCapabilityWithContext(aws.Context, *b2bi.CreateCapabilityInput, ...request.Option) (*b2bi.CreateCapabilityOutput, error) + CreateCapabilityRequest(*b2bi.CreateCapabilityInput) (*request.Request, *b2bi.CreateCapabilityOutput) + + CreatePartnership(*b2bi.CreatePartnershipInput) (*b2bi.CreatePartnershipOutput, error) + CreatePartnershipWithContext(aws.Context, *b2bi.CreatePartnershipInput, ...request.Option) (*b2bi.CreatePartnershipOutput, error) + CreatePartnershipRequest(*b2bi.CreatePartnershipInput) (*request.Request, *b2bi.CreatePartnershipOutput) + + CreateProfile(*b2bi.CreateProfileInput) (*b2bi.CreateProfileOutput, error) + CreateProfileWithContext(aws.Context, *b2bi.CreateProfileInput, ...request.Option) (*b2bi.CreateProfileOutput, error) + CreateProfileRequest(*b2bi.CreateProfileInput) (*request.Request, *b2bi.CreateProfileOutput) + + CreateTransformer(*b2bi.CreateTransformerInput) (*b2bi.CreateTransformerOutput, error) + CreateTransformerWithContext(aws.Context, *b2bi.CreateTransformerInput, ...request.Option) (*b2bi.CreateTransformerOutput, error) + CreateTransformerRequest(*b2bi.CreateTransformerInput) (*request.Request, *b2bi.CreateTransformerOutput) + + DeleteCapability(*b2bi.DeleteCapabilityInput) (*b2bi.DeleteCapabilityOutput, error) + DeleteCapabilityWithContext(aws.Context, *b2bi.DeleteCapabilityInput, ...request.Option) (*b2bi.DeleteCapabilityOutput, error) + DeleteCapabilityRequest(*b2bi.DeleteCapabilityInput) (*request.Request, *b2bi.DeleteCapabilityOutput) + + DeletePartnership(*b2bi.DeletePartnershipInput) (*b2bi.DeletePartnershipOutput, error) + DeletePartnershipWithContext(aws.Context, *b2bi.DeletePartnershipInput, ...request.Option) (*b2bi.DeletePartnershipOutput, error) + DeletePartnershipRequest(*b2bi.DeletePartnershipInput) (*request.Request, *b2bi.DeletePartnershipOutput) + + DeleteProfile(*b2bi.DeleteProfileInput) (*b2bi.DeleteProfileOutput, error) + DeleteProfileWithContext(aws.Context, *b2bi.DeleteProfileInput, ...request.Option) (*b2bi.DeleteProfileOutput, error) + DeleteProfileRequest(*b2bi.DeleteProfileInput) (*request.Request, *b2bi.DeleteProfileOutput) + + DeleteTransformer(*b2bi.DeleteTransformerInput) (*b2bi.DeleteTransformerOutput, error) + DeleteTransformerWithContext(aws.Context, *b2bi.DeleteTransformerInput, ...request.Option) (*b2bi.DeleteTransformerOutput, error) + DeleteTransformerRequest(*b2bi.DeleteTransformerInput) (*request.Request, *b2bi.DeleteTransformerOutput) + + GetCapability(*b2bi.GetCapabilityInput) (*b2bi.GetCapabilityOutput, error) + GetCapabilityWithContext(aws.Context, *b2bi.GetCapabilityInput, ...request.Option) (*b2bi.GetCapabilityOutput, error) + GetCapabilityRequest(*b2bi.GetCapabilityInput) (*request.Request, *b2bi.GetCapabilityOutput) + + GetPartnership(*b2bi.GetPartnershipInput) (*b2bi.GetPartnershipOutput, error) + GetPartnershipWithContext(aws.Context, *b2bi.GetPartnershipInput, ...request.Option) (*b2bi.GetPartnershipOutput, error) + GetPartnershipRequest(*b2bi.GetPartnershipInput) (*request.Request, *b2bi.GetPartnershipOutput) + + GetProfile(*b2bi.GetProfileInput) (*b2bi.GetProfileOutput, error) + GetProfileWithContext(aws.Context, *b2bi.GetProfileInput, ...request.Option) (*b2bi.GetProfileOutput, error) + GetProfileRequest(*b2bi.GetProfileInput) (*request.Request, *b2bi.GetProfileOutput) + + GetTransformer(*b2bi.GetTransformerInput) (*b2bi.GetTransformerOutput, error) + GetTransformerWithContext(aws.Context, *b2bi.GetTransformerInput, ...request.Option) (*b2bi.GetTransformerOutput, error) + GetTransformerRequest(*b2bi.GetTransformerInput) (*request.Request, *b2bi.GetTransformerOutput) + + GetTransformerJob(*b2bi.GetTransformerJobInput) (*b2bi.GetTransformerJobOutput, error) + GetTransformerJobWithContext(aws.Context, *b2bi.GetTransformerJobInput, ...request.Option) (*b2bi.GetTransformerJobOutput, error) + GetTransformerJobRequest(*b2bi.GetTransformerJobInput) (*request.Request, *b2bi.GetTransformerJobOutput) + + ListCapabilities(*b2bi.ListCapabilitiesInput) (*b2bi.ListCapabilitiesOutput, error) + ListCapabilitiesWithContext(aws.Context, *b2bi.ListCapabilitiesInput, ...request.Option) (*b2bi.ListCapabilitiesOutput, error) + ListCapabilitiesRequest(*b2bi.ListCapabilitiesInput) (*request.Request, *b2bi.ListCapabilitiesOutput) + + ListCapabilitiesPages(*b2bi.ListCapabilitiesInput, func(*b2bi.ListCapabilitiesOutput, bool) bool) error + ListCapabilitiesPagesWithContext(aws.Context, *b2bi.ListCapabilitiesInput, func(*b2bi.ListCapabilitiesOutput, bool) bool, ...request.Option) error + + ListPartnerships(*b2bi.ListPartnershipsInput) (*b2bi.ListPartnershipsOutput, error) + ListPartnershipsWithContext(aws.Context, *b2bi.ListPartnershipsInput, ...request.Option) (*b2bi.ListPartnershipsOutput, error) + ListPartnershipsRequest(*b2bi.ListPartnershipsInput) (*request.Request, *b2bi.ListPartnershipsOutput) + + ListPartnershipsPages(*b2bi.ListPartnershipsInput, func(*b2bi.ListPartnershipsOutput, bool) bool) error + ListPartnershipsPagesWithContext(aws.Context, *b2bi.ListPartnershipsInput, func(*b2bi.ListPartnershipsOutput, bool) bool, ...request.Option) error + + ListProfiles(*b2bi.ListProfilesInput) (*b2bi.ListProfilesOutput, error) + ListProfilesWithContext(aws.Context, *b2bi.ListProfilesInput, ...request.Option) (*b2bi.ListProfilesOutput, error) + ListProfilesRequest(*b2bi.ListProfilesInput) (*request.Request, *b2bi.ListProfilesOutput) + + ListProfilesPages(*b2bi.ListProfilesInput, func(*b2bi.ListProfilesOutput, bool) bool) error + ListProfilesPagesWithContext(aws.Context, *b2bi.ListProfilesInput, func(*b2bi.ListProfilesOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*b2bi.ListTagsForResourceInput) (*b2bi.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *b2bi.ListTagsForResourceInput, ...request.Option) (*b2bi.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*b2bi.ListTagsForResourceInput) (*request.Request, *b2bi.ListTagsForResourceOutput) + + ListTransformers(*b2bi.ListTransformersInput) (*b2bi.ListTransformersOutput, error) + ListTransformersWithContext(aws.Context, *b2bi.ListTransformersInput, ...request.Option) (*b2bi.ListTransformersOutput, error) + ListTransformersRequest(*b2bi.ListTransformersInput) (*request.Request, *b2bi.ListTransformersOutput) + + ListTransformersPages(*b2bi.ListTransformersInput, func(*b2bi.ListTransformersOutput, bool) bool) error + ListTransformersPagesWithContext(aws.Context, *b2bi.ListTransformersInput, func(*b2bi.ListTransformersOutput, bool) bool, ...request.Option) error + + StartTransformerJob(*b2bi.StartTransformerJobInput) (*b2bi.StartTransformerJobOutput, error) + StartTransformerJobWithContext(aws.Context, *b2bi.StartTransformerJobInput, ...request.Option) (*b2bi.StartTransformerJobOutput, error) + StartTransformerJobRequest(*b2bi.StartTransformerJobInput) (*request.Request, *b2bi.StartTransformerJobOutput) + + TagResource(*b2bi.TagResourceInput) (*b2bi.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *b2bi.TagResourceInput, ...request.Option) (*b2bi.TagResourceOutput, error) + TagResourceRequest(*b2bi.TagResourceInput) (*request.Request, *b2bi.TagResourceOutput) + + TestMapping(*b2bi.TestMappingInput) (*b2bi.TestMappingOutput, error) + TestMappingWithContext(aws.Context, *b2bi.TestMappingInput, ...request.Option) (*b2bi.TestMappingOutput, error) + TestMappingRequest(*b2bi.TestMappingInput) (*request.Request, *b2bi.TestMappingOutput) + + TestParsing(*b2bi.TestParsingInput) (*b2bi.TestParsingOutput, error) + TestParsingWithContext(aws.Context, *b2bi.TestParsingInput, ...request.Option) (*b2bi.TestParsingOutput, error) + TestParsingRequest(*b2bi.TestParsingInput) (*request.Request, *b2bi.TestParsingOutput) + + UntagResource(*b2bi.UntagResourceInput) (*b2bi.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *b2bi.UntagResourceInput, ...request.Option) (*b2bi.UntagResourceOutput, error) + UntagResourceRequest(*b2bi.UntagResourceInput) (*request.Request, *b2bi.UntagResourceOutput) + + UpdateCapability(*b2bi.UpdateCapabilityInput) (*b2bi.UpdateCapabilityOutput, error) + UpdateCapabilityWithContext(aws.Context, *b2bi.UpdateCapabilityInput, ...request.Option) (*b2bi.UpdateCapabilityOutput, error) + UpdateCapabilityRequest(*b2bi.UpdateCapabilityInput) (*request.Request, *b2bi.UpdateCapabilityOutput) + + UpdatePartnership(*b2bi.UpdatePartnershipInput) (*b2bi.UpdatePartnershipOutput, error) + UpdatePartnershipWithContext(aws.Context, *b2bi.UpdatePartnershipInput, ...request.Option) (*b2bi.UpdatePartnershipOutput, error) + UpdatePartnershipRequest(*b2bi.UpdatePartnershipInput) (*request.Request, *b2bi.UpdatePartnershipOutput) + + UpdateProfile(*b2bi.UpdateProfileInput) (*b2bi.UpdateProfileOutput, error) + UpdateProfileWithContext(aws.Context, *b2bi.UpdateProfileInput, ...request.Option) (*b2bi.UpdateProfileOutput, error) + UpdateProfileRequest(*b2bi.UpdateProfileInput) (*request.Request, *b2bi.UpdateProfileOutput) + + UpdateTransformer(*b2bi.UpdateTransformerInput) (*b2bi.UpdateTransformerOutput, error) + UpdateTransformerWithContext(aws.Context, *b2bi.UpdateTransformerInput, ...request.Option) (*b2bi.UpdateTransformerOutput, error) + UpdateTransformerRequest(*b2bi.UpdateTransformerInput) (*request.Request, *b2bi.UpdateTransformerOutput) +} + +var _ B2biAPI = (*b2bi.B2bi)(nil) diff --git a/service/b2bi/doc.go b/service/b2bi/doc.go new file mode 100644 index 00000000000..49e8d9e0a17 --- /dev/null +++ b/service/b2bi/doc.go @@ -0,0 +1,42 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package b2bi provides the client and types for making API +// requests to AWS B2B Data Interchange. +// +// This is the Amazon Web Services B2B Data Interchange API Reference. It provides +// descriptions, API request parameters, and the XML response for each of the +// B2BI API actions. +// +// B2BI enables automated exchange of EDI (electronic data interchange) based +// business-critical transactions at cloud scale, with elasticity and pay-as-you-go +// pricing. Businesses use EDI documents to exchange transactional data with +// trading partners, such as suppliers and end customers, using standardized +// formats such as X12. +// +// Rather than actually running a command, you can use the --generate-cli-skeleton +// parameter with any API call to generate and display a parameter template. +// You can then use the generated template to customize and use as input on +// a later command. For details, see Generate and use a parameter skeleton file +// (https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html#cli-usage-skeleton-generate). +// +// See https://docs.aws.amazon.com/goto/WebAPI/b2bi-2022-06-23 for more information on this service. +// +// See b2bi package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/b2bi/ +// +// # Using the Client +// +// To contact AWS B2B Data Interchange with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS B2B Data Interchange client B2bi for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/b2bi/#New +package b2bi diff --git a/service/b2bi/errors.go b/service/b2bi/errors.go new file mode 100644 index 00000000000..8ca3e0d984e --- /dev/null +++ b/service/b2bi/errors.go @@ -0,0 +1,70 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // A conflict exception is thrown when you attempt to delete a resource (such + // as a profile or a capability) that is being used by other resources. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // This exception is thrown when an error occurs in the Amazon Web Services + // B2B Data Interchange service. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Occurs when the requested resource does not exist, or cannot be found. In + // some cases, the resource exists in a region other than the region specified + // in the API call. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Occurs when the calling command attempts to exceed one of the service quotas, + // for example trying to create a capability when you already have the maximum + // number of capabilities allowed. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to throttling: the data speed and rendering may + // be limited depending on various parameters and conditions. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // Occurs when a B2BI object cannot be validated against a request from another + // object. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/b2bi/examples_test.go b/service/b2bi/examples_test.go new file mode 100644 index 00000000000..8204c41bc95 --- /dev/null +++ b/service/b2bi/examples_test.go @@ -0,0 +1,1173 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi_test + +import ( + "fmt" + "strings" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awserr" + "github.com/aws/aws-sdk-go/aws/session" + "github.com/aws/aws-sdk-go/service/b2bi" +) + +var _ time.Duration +var _ strings.Reader +var _ aws.Config + +func parseTime(layout, value string) *time.Time { + t, err := time.Parse(layout, value) + if err != nil { + panic(err) + } + return &t +} + +// Sample CreateCapability call +// + +func ExampleB2bi_CreateCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateCapabilityInput{ + ClientToken: aws.String("foo"), + Configuration: &b2bi.CapabilityConfiguration{ + Edi: &b2bi.EdiConfiguration{ + InputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-9a893cf536df4658b"), + Type: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + }, + }, + InstructionsDocuments: []*b2bi.S3Location{ + { + BucketName: aws.String("test-bucket"), + Key: aws.String("instructiondoc.txt"), + }, + }, + Name: aws.String("b2biexample"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("capabilityKey1"), + Value: aws.String("capabilityValue1"), + }, + }, + Type: aws.String("edi"), + } + + result, err := svc.CreateCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreatePartnership call +// + +func ExampleB2bi_CreatePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreatePartnershipInput{ + Capabilities: []*string{ + aws.String("ca-963a8121e4fc4e348"), + }, + ClientToken: aws.String("foo"), + Email: aws.String("john@example.com"), + Name: aws.String("b2bipartner"), + Phone: aws.String("5555555555"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey1"), + Value: aws.String("sampleValue1"), + }, + }, + } + + result, err := svc.CreatePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreateProfile call +// + +func ExampleB2bi_CreateProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateProfileInput{ + BusinessName: aws.String("John's Shipping"), + ClientToken: aws.String("foo"), + Email: aws.String("john@example.com"), + Logging: aws.String("ENABLED"), + Name: aws.String("Shipping Profile"), + Phone: aws.String("5555555555"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("sampleValue"), + }, + }, + } + + result, err := svc.CreateProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample CreateTransformer call +// + +func ExampleB2bi_CreateTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.CreateTransformerInput{ + ClientToken: aws.String("foo"), + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + MappingTemplate: aws.String("{}"), + Name: aws.String("transformJSON"), + SampleDocument: aws.String("s3://test-bucket/sampleDoc.txt"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("sampleValue"), + }, + }, + } + + result, err := svc.CreateTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteCapabilty call +// + +func ExampleB2bi_DeleteCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + } + + result, err := svc.DeleteCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeletePartnership call +// + +func ExampleB2bi_DeletePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeletePartnershipInput{ + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.DeletePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteProfile call +// + +func ExampleB2bi_DeleteProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteProfileInput{ + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.DeleteProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample DeleteTransformer call +// + +func ExampleB2bi_DeleteTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.DeleteTransformerInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.DeleteTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetCapabilty call +// + +func ExampleB2bi_GetCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + } + + result, err := svc.GetCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetPartnership call +// + +func ExampleB2bi_GetPartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetPartnershipInput{ + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.GetPartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetProfile call +// + +func ExampleB2bi_GetProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetProfileInput{ + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.GetProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetTransformer call +// + +func ExampleB2bi_GetTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetTransformerInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.GetTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample GetTransformerJob call +// + +func ExampleB2bi_GetTransformerJob_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.GetTransformerJobInput{ + TransformerId: aws.String("tr-974c129999f84d8c9"), + TransformerJobId: aws.String("tj-vpYxfV7yQOqjMSYllEslLw"), + } + + result, err := svc.GetTransformerJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListCapabilities call +// + +func ExampleB2bi_ListCapabilities_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListCapabilitiesInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListCapabilities(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListPartnerships call +// + +func ExampleB2bi_ListPartnerships_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListPartnershipsInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.ListPartnerships(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListProfiles call +// + +func ExampleB2bi_ListProfiles_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListProfilesInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListProfiles(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListTagsForResources call +// + +func ExampleB2bi_ListTagsForResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListTagsForResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + } + + result, err := svc.ListTagsForResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample ListTransformers call +// + +func ExampleB2bi_ListTransformers_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.ListTransformersInput{ + MaxResults: aws.Int64(50), + NextToken: aws.String("foo"), + } + + result, err := svc.ListTransformers(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample StartTransformerJob call +// + +func ExampleB2bi_StartTransformerJob_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.StartTransformerJobInput{ + ClientToken: aws.String("foo"), + InputFile: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/inputFile.txt"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.StartTransformerJob(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TagResource call +// + +func ExampleB2bi_TagResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TagResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + Tags: []*b2bi.Tag{ + { + Key: aws.String("sampleKey"), + Value: aws.String("SampleValue"), + }, + }, + } + + result, err := svc.TagResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TestMapping call +// + +func ExampleB2bi_TestMapping_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TestMappingInput{ + FileFormat: aws.String("JSON"), + InputFileContent: aws.String("Sample file content"), + MappingTemplate: aws.String("$"), + } + + result, err := svc.TestMapping(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample TestParsing call +// + +func ExampleB2bi_TestParsing_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.TestParsingInput{ + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + InputFile: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("sampleFile.txt"), + }, + } + + result, err := svc.TestParsing(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UntagResource call +// + +func ExampleB2bi_UntagResource_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UntagResourceInput{ + ResourceARN: aws.String("arn:aws:b2bi:us-west-2:123456789012:profile/p-60fbc37c87f04fce9"), + TagKeys: []*string{ + aws.String("sampleKey"), + }, + } + + result, err := svc.UntagResource(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateCapability call +// + +func ExampleB2bi_UpdateCapability_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateCapabilityInput{ + CapabilityId: aws.String("ca-963a8121e4fc4e348"), + Configuration: &b2bi.CapabilityConfiguration{ + Edi: &b2bi.EdiConfiguration{ + InputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("input/"), + }, + OutputLocation: &b2bi.S3Location{ + BucketName: aws.String("test-bucket"), + Key: aws.String("output/"), + }, + TransformerId: aws.String("tr-9a893cf536df4658b"), + Type: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + }, + }, + InstructionsDocuments: []*b2bi.S3Location{ + { + BucketName: aws.String("test-bucket"), + Key: aws.String("instructiondoc.txt"), + }, + }, + Name: aws.String("b2biexample"), + } + + result, err := svc.UpdateCapability(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdatePartnership call +// + +func ExampleB2bi_UpdatePartnership_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdatePartnershipInput{ + Capabilities: []*string{ + aws.String("ca-963a8121e4fc4e348"), + }, + Name: aws.String("b2bipartner"), + PartnershipId: aws.String("ps-219fa02f5b4242af8"), + } + + result, err := svc.UpdatePartnership(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateProfile call +// + +func ExampleB2bi_UpdateProfile_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateProfileInput{ + BusinessName: aws.String("John's Shipping"), + Email: aws.String("john@example.com"), + Name: aws.String("Shipping Profile"), + Phone: aws.String("5555555555"), + ProfileId: aws.String("p-60fbc37c87f04fce9"), + } + + result, err := svc.UpdateProfile(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// Sample UpdateTransformer call +// + +func ExampleB2bi_UpdateTransformer_shared00() { + svc := b2bi.New(session.New()) + input := &b2bi.UpdateTransformerInput{ + EdiType: &b2bi.EdiType{ + X12Details: &b2bi.X12Details{ + TransactionSet: aws.String("X12_110"), + Version: aws.String("VERSION_4010"), + }, + }, + FileFormat: aws.String("JSON"), + MappingTemplate: aws.String("{}"), + Name: aws.String("transformJSON"), + SampleDocument: aws.String("s3://test-bucket/sampleDoc.txt"), + Status: aws.String("inactive"), + TransformerId: aws.String("tr-974c129999f84d8c9"), + } + + result, err := svc.UpdateTransformer(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case b2bi.ErrCodeConflictException: + fmt.Println(b2bi.ErrCodeConflictException, aerr.Error()) + case b2bi.ErrCodeAccessDeniedException: + fmt.Println(b2bi.ErrCodeAccessDeniedException, aerr.Error()) + case b2bi.ErrCodeValidationException: + fmt.Println(b2bi.ErrCodeValidationException, aerr.Error()) + case b2bi.ErrCodeThrottlingException: + fmt.Println(b2bi.ErrCodeThrottlingException, aerr.Error()) + case b2bi.ErrCodeResourceNotFoundException: + fmt.Println(b2bi.ErrCodeResourceNotFoundException, aerr.Error()) + case b2bi.ErrCodeServiceQuotaExceededException: + fmt.Println(b2bi.ErrCodeServiceQuotaExceededException, aerr.Error()) + case b2bi.ErrCodeInternalServerException: + fmt.Println(b2bi.ErrCodeInternalServerException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} diff --git a/service/b2bi/service.go b/service/b2bi/service.go new file mode 100644 index 00000000000..ad315aca468 --- /dev/null +++ b/service/b2bi/service.go @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package b2bi + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +// B2bi provides the API operation methods for making requests to +// AWS B2B Data Interchange. See this package's package overview docs +// for details on the service. +// +// B2bi methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type B2bi struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "b2bi" // Name of service. + EndpointsID = ServiceName // ID to lookup a service endpoint with. + ServiceID = "b2bi" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the B2bi client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a B2bi client from just a session. +// svc := b2bi.New(mySession) +// +// // Create a B2bi client with additional configuration +// svc := b2bi.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *B2bi { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "b2bi" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *B2bi { + svc := &B2bi{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2022-06-23", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "B2BI", + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(jsonrpc.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a B2bi operation and runs any +// custom request initialization. +func (c *B2bi) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/backup/api.go b/service/backup/api.go index 3578a55297f..b8e23c39911 100644 --- a/service/backup/api.go +++ b/service/backup/api.go @@ -790,6 +790,221 @@ func (c *Backup) CreateReportPlanWithContext(ctx aws.Context, input *CreateRepor return out, req.Send() } +const opCreateRestoreTestingPlan = "CreateRestoreTestingPlan" + +// CreateRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the CreateRestoreTestingPlan 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 CreateRestoreTestingPlan for more information on using the CreateRestoreTestingPlan +// 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 CreateRestoreTestingPlanRequest method. +// req, resp := client.CreateRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingPlan +func (c *Backup) CreateRestoreTestingPlanRequest(input *CreateRestoreTestingPlanInput) (req *request.Request, output *CreateRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opCreateRestoreTestingPlan, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans", + } + + if input == nil { + input = &CreateRestoreTestingPlanInput{} + } + + output = &CreateRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRestoreTestingPlan API operation for AWS Backup. +// +// This is the first of two steps to create a restore testing plan; once this +// request is successful, finish the procedure with request CreateRestoreTestingSelection. +// +// You must include the parameter RestoreTestingPlan. You may optionally include +// CreatorRequestId and Tags. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation CreateRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - AlreadyExistsException +// The required resource already exists. +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingPlan +func (c *Backup) CreateRestoreTestingPlan(input *CreateRestoreTestingPlanInput) (*CreateRestoreTestingPlanOutput, error) { + req, out := c.CreateRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// CreateRestoreTestingPlanWithContext is the same as CreateRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRestoreTestingPlan 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 *Backup) CreateRestoreTestingPlanWithContext(ctx aws.Context, input *CreateRestoreTestingPlanInput, opts ...request.Option) (*CreateRestoreTestingPlanOutput, error) { + req, out := c.CreateRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateRestoreTestingSelection = "CreateRestoreTestingSelection" + +// CreateRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the CreateRestoreTestingSelection 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 CreateRestoreTestingSelection for more information on using the CreateRestoreTestingSelection +// 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 CreateRestoreTestingSelectionRequest method. +// req, resp := client.CreateRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingSelection +func (c *Backup) CreateRestoreTestingSelectionRequest(input *CreateRestoreTestingSelectionInput) (req *request.Request, output *CreateRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opCreateRestoreTestingSelection, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections", + } + + if input == nil { + input = &CreateRestoreTestingSelectionInput{} + } + + output = &CreateRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateRestoreTestingSelection API operation for AWS Backup. +// +// This request can be sent after CreateRestoreTestingPlan request returns successfully. +// This is the second part of creating a resource testing plan, and it must +// be completed sequentially. +// +// This consists of RestoreTestingSelectionName, ProtectedResourceType, and +// one of the following: +// +// - ProtectedResourceArns +// +// - ProtectedResourceConditions +// +// Each protected resource type can have one single value. +// +// A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns +// along with ProtectedResourceConditions. Alternatively, you can include up +// to 30 specific protected resource ARNs in ProtectedResourceArns. +// +// Cannot select by both protected resource types AND specific ARNs. Request +// will fail if both are included. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation CreateRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - AlreadyExistsException +// The required resource already exists. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/CreateRestoreTestingSelection +func (c *Backup) CreateRestoreTestingSelection(input *CreateRestoreTestingSelectionInput) (*CreateRestoreTestingSelectionOutput, error) { + req, out := c.CreateRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// CreateRestoreTestingSelectionWithContext is the same as CreateRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See CreateRestoreTestingSelection 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 *Backup) CreateRestoreTestingSelectionWithContext(ctx aws.Context, input *CreateRestoreTestingSelectionInput, opts ...request.Option) (*CreateRestoreTestingSelectionOutput, error) { + req, out := c.CreateRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteBackupPlan = "DeleteBackupPlan" // DeleteBackupPlanRequest generates a "aws/request.Request" representing the @@ -1652,230 +1867,403 @@ func (c *Backup) DeleteReportPlanWithContext(ctx aws.Context, input *DeleteRepor return out, req.Send() } -const opDescribeBackupJob = "DescribeBackupJob" +const opDeleteRestoreTestingPlan = "DeleteRestoreTestingPlan" -// DescribeBackupJobRequest generates a "aws/request.Request" representing the -// client's request for the DescribeBackupJob operation. The "output" return +// DeleteRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRestoreTestingPlan 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 DescribeBackupJob for more information on using the DescribeBackupJob +// See DeleteRestoreTestingPlan for more information on using the DeleteRestoreTestingPlan // 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 DescribeBackupJobRequest method. -// req, resp := client.DescribeBackupJobRequest(params) +// // Example sending a request using the DeleteRestoreTestingPlanRequest method. +// req, resp := client.DeleteRestoreTestingPlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob -func (c *Backup) DescribeBackupJobRequest(input *DescribeBackupJobInput) (req *request.Request, output *DescribeBackupJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingPlan +func (c *Backup) DeleteRestoreTestingPlanRequest(input *DeleteRestoreTestingPlanInput) (req *request.Request, output *DeleteRestoreTestingPlanOutput) { op := &request.Operation{ - Name: opDescribeBackupJob, - HTTPMethod: "GET", - HTTPPath: "/backup-jobs/{backupJobId}", + Name: opDeleteRestoreTestingPlan, + HTTPMethod: "DELETE", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", } if input == nil { - input = &DescribeBackupJobInput{} + input = &DeleteRestoreTestingPlanInput{} } - output = &DescribeBackupJobOutput{} + output = &DeleteRestoreTestingPlanOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DescribeBackupJob API operation for AWS Backup. +// DeleteRestoreTestingPlan API operation for AWS Backup. // -// Returns backup job details for the specified BackupJobId. +// This request deletes the specified restore testing plan. +// +// Deletion can only successfully occur if all associated restore testing selections +// are deleted first. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation DescribeBackupJob for usage and error information. +// API operation DeleteRestoreTestingPlan for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - DependencyFailureException -// A dependent Amazon Web Services service or resource returned an error to -// the Backup service, and the action cannot be completed. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob -func (c *Backup) DescribeBackupJob(input *DescribeBackupJobInput) (*DescribeBackupJobOutput, error) { - req, out := c.DescribeBackupJobRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingPlan +func (c *Backup) DeleteRestoreTestingPlan(input *DeleteRestoreTestingPlanInput) (*DeleteRestoreTestingPlanOutput, error) { + req, out := c.DeleteRestoreTestingPlanRequest(input) return out, req.Send() } -// DescribeBackupJobWithContext is the same as DescribeBackupJob with the addition of +// DeleteRestoreTestingPlanWithContext is the same as DeleteRestoreTestingPlan with the addition of // the ability to pass a context and additional request options. // -// See DescribeBackupJob for details on how to use this API operation. +// See DeleteRestoreTestingPlan 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 *Backup) DescribeBackupJobWithContext(ctx aws.Context, input *DescribeBackupJobInput, opts ...request.Option) (*DescribeBackupJobOutput, error) { - req, out := c.DescribeBackupJobRequest(input) +func (c *Backup) DeleteRestoreTestingPlanWithContext(ctx aws.Context, input *DeleteRestoreTestingPlanInput, opts ...request.Option) (*DeleteRestoreTestingPlanOutput, error) { + req, out := c.DeleteRestoreTestingPlanRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeBackupVault = "DescribeBackupVault" +const opDeleteRestoreTestingSelection = "DeleteRestoreTestingSelection" -// DescribeBackupVaultRequest generates a "aws/request.Request" representing the -// client's request for the DescribeBackupVault operation. The "output" return +// DeleteRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the DeleteRestoreTestingSelection 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 DescribeBackupVault for more information on using the DescribeBackupVault +// See DeleteRestoreTestingSelection for more information on using the DeleteRestoreTestingSelection // 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 DescribeBackupVaultRequest method. -// req, resp := client.DescribeBackupVaultRequest(params) +// // Example sending a request using the DeleteRestoreTestingSelectionRequest method. +// req, resp := client.DeleteRestoreTestingSelectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVault -func (c *Backup) DescribeBackupVaultRequest(input *DescribeBackupVaultInput) (req *request.Request, output *DescribeBackupVaultOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingSelection +func (c *Backup) DeleteRestoreTestingSelectionRequest(input *DeleteRestoreTestingSelectionInput) (req *request.Request, output *DeleteRestoreTestingSelectionOutput) { op := &request.Operation{ - Name: opDescribeBackupVault, - HTTPMethod: "GET", - HTTPPath: "/backup-vaults/{backupVaultName}", + Name: opDeleteRestoreTestingSelection, + HTTPMethod: "DELETE", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", } if input == nil { - input = &DescribeBackupVaultInput{} + input = &DeleteRestoreTestingSelectionInput{} } - output = &DescribeBackupVaultOutput{} + output = &DeleteRestoreTestingSelectionOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DescribeBackupVault API operation for AWS Backup. +// DeleteRestoreTestingSelection API operation for AWS Backup. // -// Returns metadata about a backup vault specified by its name. +// Input the Restore Testing Plan name and Restore Testing Selection name. +// +// All testing selections associated with a restore testing plan must be deleted +// before the restore testing plan can be deleted. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation DescribeBackupVault for usage and error information. +// API operation DeleteRestoreTestingSelection for usage and error information. // // Returned Error Types: // // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVault -func (c *Backup) DescribeBackupVault(input *DescribeBackupVaultInput) (*DescribeBackupVaultOutput, error) { - req, out := c.DescribeBackupVaultRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DeleteRestoreTestingSelection +func (c *Backup) DeleteRestoreTestingSelection(input *DeleteRestoreTestingSelectionInput) (*DeleteRestoreTestingSelectionOutput, error) { + req, out := c.DeleteRestoreTestingSelectionRequest(input) return out, req.Send() } -// DescribeBackupVaultWithContext is the same as DescribeBackupVault with the addition of +// DeleteRestoreTestingSelectionWithContext is the same as DeleteRestoreTestingSelection with the addition of // the ability to pass a context and additional request options. // -// See DescribeBackupVault for details on how to use this API operation. +// See DeleteRestoreTestingSelection 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 *Backup) DescribeBackupVaultWithContext(ctx aws.Context, input *DescribeBackupVaultInput, opts ...request.Option) (*DescribeBackupVaultOutput, error) { - req, out := c.DescribeBackupVaultRequest(input) +func (c *Backup) DeleteRestoreTestingSelectionWithContext(ctx aws.Context, input *DeleteRestoreTestingSelectionInput, opts ...request.Option) (*DeleteRestoreTestingSelectionOutput, error) { + req, out := c.DeleteRestoreTestingSelectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeCopyJob = "DescribeCopyJob" +const opDescribeBackupJob = "DescribeBackupJob" -// DescribeCopyJobRequest generates a "aws/request.Request" representing the -// client's request for the DescribeCopyJob operation. The "output" return +// DescribeBackupJobRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBackupJob 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 DescribeCopyJob for more information on using the DescribeCopyJob +// See DescribeBackupJob for more information on using the DescribeBackupJob // 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 DescribeCopyJobRequest method. -// req, resp := client.DescribeCopyJobRequest(params) +// // Example sending a request using the DescribeBackupJobRequest method. +// req, resp := client.DescribeBackupJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeCopyJob -func (c *Backup) DescribeCopyJobRequest(input *DescribeCopyJobInput) (req *request.Request, output *DescribeCopyJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob +func (c *Backup) DescribeBackupJobRequest(input *DescribeBackupJobInput) (req *request.Request, output *DescribeBackupJobOutput) { op := &request.Operation{ - Name: opDescribeCopyJob, + Name: opDescribeBackupJob, HTTPMethod: "GET", - HTTPPath: "/copy-jobs/{copyJobId}", + HTTPPath: "/backup-jobs/{backupJobId}", } if input == nil { - input = &DescribeCopyJobInput{} + input = &DescribeBackupJobInput{} } - output = &DescribeCopyJobOutput{} + output = &DescribeBackupJobOutput{} req = c.newRequest(op, input, output) return } -// DescribeCopyJob API operation for AWS Backup. +// DescribeBackupJob API operation for AWS Backup. +// +// Returns backup job details for the specified BackupJobId. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation DescribeBackupJob for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - DependencyFailureException +// A dependent Amazon Web Services service or resource returned an error to +// the Backup service, and the action cannot be completed. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupJob +func (c *Backup) DescribeBackupJob(input *DescribeBackupJobInput) (*DescribeBackupJobOutput, error) { + req, out := c.DescribeBackupJobRequest(input) + return out, req.Send() +} + +// DescribeBackupJobWithContext is the same as DescribeBackupJob with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBackupJob 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 *Backup) DescribeBackupJobWithContext(ctx aws.Context, input *DescribeBackupJobInput, opts ...request.Option) (*DescribeBackupJobOutput, error) { + req, out := c.DescribeBackupJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeBackupVault = "DescribeBackupVault" + +// DescribeBackupVaultRequest generates a "aws/request.Request" representing the +// client's request for the DescribeBackupVault 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 DescribeBackupVault for more information on using the DescribeBackupVault +// 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 DescribeBackupVaultRequest method. +// req, resp := client.DescribeBackupVaultRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVault +func (c *Backup) DescribeBackupVaultRequest(input *DescribeBackupVaultInput) (req *request.Request, output *DescribeBackupVaultOutput) { + op := &request.Operation{ + Name: opDescribeBackupVault, + HTTPMethod: "GET", + HTTPPath: "/backup-vaults/{backupVaultName}", + } + + if input == nil { + input = &DescribeBackupVaultInput{} + } + + output = &DescribeBackupVaultOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeBackupVault API operation for AWS Backup. +// +// Returns metadata about a backup vault specified by its name. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation DescribeBackupVault for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeBackupVault +func (c *Backup) DescribeBackupVault(input *DescribeBackupVaultInput) (*DescribeBackupVaultOutput, error) { + req, out := c.DescribeBackupVaultRequest(input) + return out, req.Send() +} + +// DescribeBackupVaultWithContext is the same as DescribeBackupVault with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeBackupVault 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 *Backup) DescribeBackupVaultWithContext(ctx aws.Context, input *DescribeBackupVaultInput, opts ...request.Option) (*DescribeBackupVaultOutput, error) { + req, out := c.DescribeBackupVaultRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeCopyJob = "DescribeCopyJob" + +// DescribeCopyJobRequest generates a "aws/request.Request" representing the +// client's request for the DescribeCopyJob 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 DescribeCopyJob for more information on using the DescribeCopyJob +// 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 DescribeCopyJobRequest method. +// req, resp := client.DescribeCopyJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/DescribeCopyJob +func (c *Backup) DescribeCopyJobRequest(input *DescribeCopyJobInput) (req *request.Request, output *DescribeCopyJobOutput) { + op := &request.Operation{ + Name: opDescribeCopyJob, + HTTPMethod: "GET", + HTTPPath: "/copy-jobs/{copyJobId}", + } + + if input == nil { + input = &DescribeCopyJobInput{} + } + + output = &DescribeCopyJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeCopyJob API operation for AWS Backup. // // Returns metadata associated with creating a copy of a resource. // @@ -3639,146 +4027,148 @@ func (c *Backup) GetRecoveryPointRestoreMetadataWithContext(ctx aws.Context, inp return out, req.Send() } -const opGetSupportedResourceTypes = "GetSupportedResourceTypes" +const opGetRestoreJobMetadata = "GetRestoreJobMetadata" -// GetSupportedResourceTypesRequest generates a "aws/request.Request" representing the -// client's request for the GetSupportedResourceTypes operation. The "output" return +// GetRestoreJobMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreJobMetadata 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 GetSupportedResourceTypes for more information on using the GetSupportedResourceTypes +// See GetRestoreJobMetadata for more information on using the GetRestoreJobMetadata // 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 GetSupportedResourceTypesRequest method. -// req, resp := client.GetSupportedResourceTypesRequest(params) +// // Example sending a request using the GetRestoreJobMetadataRequest method. +// req, resp := client.GetRestoreJobMetadataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypes -func (c *Backup) GetSupportedResourceTypesRequest(input *GetSupportedResourceTypesInput) (req *request.Request, output *GetSupportedResourceTypesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreJobMetadata +func (c *Backup) GetRestoreJobMetadataRequest(input *GetRestoreJobMetadataInput) (req *request.Request, output *GetRestoreJobMetadataOutput) { op := &request.Operation{ - Name: opGetSupportedResourceTypes, + Name: opGetRestoreJobMetadata, HTTPMethod: "GET", - HTTPPath: "/supported-resource-types", + HTTPPath: "/restore-jobs/{restoreJobId}/metadata", } if input == nil { - input = &GetSupportedResourceTypesInput{} + input = &GetRestoreJobMetadataInput{} } - output = &GetSupportedResourceTypesOutput{} + output = &GetRestoreJobMetadataOutput{} req = c.newRequest(op, input, output) return } -// GetSupportedResourceTypes API operation for AWS Backup. +// GetRestoreJobMetadata API operation for AWS Backup. // -// Returns the Amazon Web Services resource types supported by Backup. +// This request returns the metadata for the specified restore job. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation GetSupportedResourceTypes for usage and error information. +// API operation GetRestoreJobMetadata for usage and error information. // // Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypes -func (c *Backup) GetSupportedResourceTypes(input *GetSupportedResourceTypesInput) (*GetSupportedResourceTypesOutput, error) { - req, out := c.GetSupportedResourceTypesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreJobMetadata +func (c *Backup) GetRestoreJobMetadata(input *GetRestoreJobMetadataInput) (*GetRestoreJobMetadataOutput, error) { + req, out := c.GetRestoreJobMetadataRequest(input) return out, req.Send() } -// GetSupportedResourceTypesWithContext is the same as GetSupportedResourceTypes with the addition of +// GetRestoreJobMetadataWithContext is the same as GetRestoreJobMetadata with the addition of // the ability to pass a context and additional request options. // -// See GetSupportedResourceTypes for details on how to use this API operation. +// See GetRestoreJobMetadata 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 *Backup) GetSupportedResourceTypesWithContext(ctx aws.Context, input *GetSupportedResourceTypesInput, opts ...request.Option) (*GetSupportedResourceTypesOutput, error) { - req, out := c.GetSupportedResourceTypesRequest(input) +func (c *Backup) GetRestoreJobMetadataWithContext(ctx aws.Context, input *GetRestoreJobMetadataInput, opts ...request.Option) (*GetRestoreJobMetadataOutput, error) { + req, out := c.GetRestoreJobMetadataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListBackupJobSummaries = "ListBackupJobSummaries" +const opGetRestoreTestingInferredMetadata = "GetRestoreTestingInferredMetadata" -// ListBackupJobSummariesRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupJobSummaries operation. The "output" return +// GetRestoreTestingInferredMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingInferredMetadata 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 ListBackupJobSummaries for more information on using the ListBackupJobSummaries +// See GetRestoreTestingInferredMetadata for more information on using the GetRestoreTestingInferredMetadata // 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 ListBackupJobSummariesRequest method. -// req, resp := client.ListBackupJobSummariesRequest(params) +// // Example sending a request using the GetRestoreTestingInferredMetadataRequest method. +// req, resp := client.GetRestoreTestingInferredMetadataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries -func (c *Backup) ListBackupJobSummariesRequest(input *ListBackupJobSummariesInput) (req *request.Request, output *ListBackupJobSummariesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingInferredMetadata +func (c *Backup) GetRestoreTestingInferredMetadataRequest(input *GetRestoreTestingInferredMetadataInput) (req *request.Request, output *GetRestoreTestingInferredMetadataOutput) { op := &request.Operation{ - Name: opListBackupJobSummaries, + Name: opGetRestoreTestingInferredMetadata, HTTPMethod: "GET", - HTTPPath: "/audit/backup-job-summaries", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/restore-testing/inferred-metadata", } if input == nil { - input = &ListBackupJobSummariesInput{} + input = &GetRestoreTestingInferredMetadataInput{} } - output = &ListBackupJobSummariesOutput{} + output = &GetRestoreTestingInferredMetadataOutput{} req = c.newRequest(op, input, output) return } -// ListBackupJobSummaries API operation for AWS Backup. -// -// This is a request for a summary of backup jobs created or running within -// the most recent 30 days. You can include parameters AccountID, State, ResourceType, -// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// GetRestoreTestingInferredMetadata API operation for AWS Backup. // -// This request returns a summary that contains Region, Account, State, ResourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. +// This request returns the minimal required set of metadata needed to start +// a restore job with secure default settings. BackupVaultName and RecoveryPointArn +// are required parameters. BackupVaultAccountId is an optional parameter. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupJobSummaries for usage and error information. +// API operation GetRestoreTestingInferredMetadata for usage and error information. // // Returned Error Types: // @@ -3786,549 +4176,312 @@ func (c *Backup) ListBackupJobSummariesRequest(input *ListBackupJobSummariesInpu // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries -func (c *Backup) ListBackupJobSummaries(input *ListBackupJobSummariesInput) (*ListBackupJobSummariesOutput, error) { - req, out := c.ListBackupJobSummariesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingInferredMetadata +func (c *Backup) GetRestoreTestingInferredMetadata(input *GetRestoreTestingInferredMetadataInput) (*GetRestoreTestingInferredMetadataOutput, error) { + req, out := c.GetRestoreTestingInferredMetadataRequest(input) return out, req.Send() } -// ListBackupJobSummariesWithContext is the same as ListBackupJobSummaries with the addition of +// GetRestoreTestingInferredMetadataWithContext is the same as GetRestoreTestingInferredMetadata with the addition of // the ability to pass a context and additional request options. // -// See ListBackupJobSummaries for details on how to use this API operation. +// See GetRestoreTestingInferredMetadata 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 *Backup) ListBackupJobSummariesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, opts ...request.Option) (*ListBackupJobSummariesOutput, error) { - req, out := c.ListBackupJobSummariesRequest(input) +func (c *Backup) GetRestoreTestingInferredMetadataWithContext(ctx aws.Context, input *GetRestoreTestingInferredMetadataInput, opts ...request.Option) (*GetRestoreTestingInferredMetadataOutput, error) { + req, out := c.GetRestoreTestingInferredMetadataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupJobSummariesPages iterates over the pages of a ListBackupJobSummaries operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListBackupJobSummaries 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 ListBackupJobSummaries operation. -// pageNum := 0 -// err := client.ListBackupJobSummariesPages(params, -// func(page *backup.ListBackupJobSummariesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Backup) ListBackupJobSummariesPages(input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool) error { - return c.ListBackupJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListBackupJobSummariesPagesWithContext same as ListBackupJobSummariesPages 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 *Backup) ListBackupJobSummariesPagesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupJobSummariesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListBackupJobSummariesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListBackupJobSummariesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListBackupJobs = "ListBackupJobs" +const opGetRestoreTestingPlan = "GetRestoreTestingPlan" -// ListBackupJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupJobs operation. The "output" return +// GetRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingPlan 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 ListBackupJobs for more information on using the ListBackupJobs +// See GetRestoreTestingPlan for more information on using the GetRestoreTestingPlan // 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 ListBackupJobsRequest method. -// req, resp := client.ListBackupJobsRequest(params) +// // Example sending a request using the GetRestoreTestingPlanRequest method. +// req, resp := client.GetRestoreTestingPlanRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs -func (c *Backup) ListBackupJobsRequest(input *ListBackupJobsInput) (req *request.Request, output *ListBackupJobsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingPlan +func (c *Backup) GetRestoreTestingPlanRequest(input *GetRestoreTestingPlanInput) (req *request.Request, output *GetRestoreTestingPlanOutput) { op := &request.Operation{ - Name: opListBackupJobs, + Name: opGetRestoreTestingPlan, HTTPMethod: "GET", - HTTPPath: "/backup-jobs/", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", } if input == nil { - input = &ListBackupJobsInput{} + input = &GetRestoreTestingPlanInput{} } - output = &ListBackupJobsOutput{} + output = &GetRestoreTestingPlanOutput{} req = c.newRequest(op, input, output) return } -// ListBackupJobs API operation for AWS Backup. +// GetRestoreTestingPlan API operation for AWS Backup. // -// Returns a list of existing backup jobs for an authenticated account for the -// last 30 days. For a longer period of time, consider using these monitoring -// tools (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html). +// Returns RestoreTestingPlan details for the specified RestoreTestingPlanName. +// The details are the body of a restore testing plan in JSON format, in addition +// to plan metadata. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupJobs for usage and error information. +// API operation GetRestoreTestingPlan for usage and error information. // // Returned Error Types: // -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs -func (c *Backup) ListBackupJobs(input *ListBackupJobsInput) (*ListBackupJobsOutput, error) { - req, out := c.ListBackupJobsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingPlan +func (c *Backup) GetRestoreTestingPlan(input *GetRestoreTestingPlanInput) (*GetRestoreTestingPlanOutput, error) { + req, out := c.GetRestoreTestingPlanRequest(input) return out, req.Send() } -// ListBackupJobsWithContext is the same as ListBackupJobs with the addition of +// GetRestoreTestingPlanWithContext is the same as GetRestoreTestingPlan with the addition of // the ability to pass a context and additional request options. // -// See ListBackupJobs for details on how to use this API operation. +// See GetRestoreTestingPlan 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 *Backup) ListBackupJobsWithContext(ctx aws.Context, input *ListBackupJobsInput, opts ...request.Option) (*ListBackupJobsOutput, error) { - req, out := c.ListBackupJobsRequest(input) +func (c *Backup) GetRestoreTestingPlanWithContext(ctx aws.Context, input *GetRestoreTestingPlanInput, opts ...request.Option) (*GetRestoreTestingPlanOutput, error) { + req, out := c.GetRestoreTestingPlanRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupJobsPages iterates over the pages of a ListBackupJobs operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListBackupJobs 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 ListBackupJobs operation. -// pageNum := 0 -// err := client.ListBackupJobsPages(params, -// func(page *backup.ListBackupJobsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Backup) ListBackupJobsPages(input *ListBackupJobsInput, fn func(*ListBackupJobsOutput, bool) bool) error { - return c.ListBackupJobsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListBackupJobsPagesWithContext same as ListBackupJobsPages 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 *Backup) ListBackupJobsPagesWithContext(ctx aws.Context, input *ListBackupJobsInput, fn func(*ListBackupJobsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupJobsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListBackupJobsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListBackupJobsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListBackupPlanTemplates = "ListBackupPlanTemplates" +const opGetRestoreTestingSelection = "GetRestoreTestingSelection" -// ListBackupPlanTemplatesRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupPlanTemplates operation. The "output" return +// GetRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the GetRestoreTestingSelection 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 ListBackupPlanTemplates for more information on using the ListBackupPlanTemplates +// See GetRestoreTestingSelection for more information on using the GetRestoreTestingSelection // 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 ListBackupPlanTemplatesRequest method. -// req, resp := client.ListBackupPlanTemplatesRequest(params) +// // Example sending a request using the GetRestoreTestingSelectionRequest method. +// req, resp := client.GetRestoreTestingSelectionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplates -func (c *Backup) ListBackupPlanTemplatesRequest(input *ListBackupPlanTemplatesInput) (req *request.Request, output *ListBackupPlanTemplatesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingSelection +func (c *Backup) GetRestoreTestingSelectionRequest(input *GetRestoreTestingSelectionInput) (req *request.Request, output *GetRestoreTestingSelectionOutput) { op := &request.Operation{ - Name: opListBackupPlanTemplates, + Name: opGetRestoreTestingSelection, HTTPMethod: "GET", - HTTPPath: "/backup/template/plans", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", } if input == nil { - input = &ListBackupPlanTemplatesInput{} + input = &GetRestoreTestingSelectionInput{} } - output = &ListBackupPlanTemplatesOutput{} + output = &GetRestoreTestingSelectionOutput{} req = c.newRequest(op, input, output) return } -// ListBackupPlanTemplates API operation for AWS Backup. +// GetRestoreTestingSelection API operation for AWS Backup. // -// Returns metadata of your saved backup plan templates, including the template -// ID, name, and the creation and deletion dates. +// Returns RestoreTestingSelection, which displays resources and elements of +// the restore testing plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupPlanTemplates for usage and error information. +// API operation GetRestoreTestingSelection for usage and error information. // // Returned Error Types: // -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplates -func (c *Backup) ListBackupPlanTemplates(input *ListBackupPlanTemplatesInput) (*ListBackupPlanTemplatesOutput, error) { - req, out := c.ListBackupPlanTemplatesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetRestoreTestingSelection +func (c *Backup) GetRestoreTestingSelection(input *GetRestoreTestingSelectionInput) (*GetRestoreTestingSelectionOutput, error) { + req, out := c.GetRestoreTestingSelectionRequest(input) return out, req.Send() } -// ListBackupPlanTemplatesWithContext is the same as ListBackupPlanTemplates with the addition of +// GetRestoreTestingSelectionWithContext is the same as GetRestoreTestingSelection with the addition of // the ability to pass a context and additional request options. // -// See ListBackupPlanTemplates for details on how to use this API operation. +// See GetRestoreTestingSelection 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 *Backup) ListBackupPlanTemplatesWithContext(ctx aws.Context, input *ListBackupPlanTemplatesInput, opts ...request.Option) (*ListBackupPlanTemplatesOutput, error) { - req, out := c.ListBackupPlanTemplatesRequest(input) +func (c *Backup) GetRestoreTestingSelectionWithContext(ctx aws.Context, input *GetRestoreTestingSelectionInput, opts ...request.Option) (*GetRestoreTestingSelectionOutput, error) { + req, out := c.GetRestoreTestingSelectionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupPlanTemplatesPages iterates over the pages of a ListBackupPlanTemplates operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListBackupPlanTemplates 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 ListBackupPlanTemplates operation. -// pageNum := 0 -// err := client.ListBackupPlanTemplatesPages(params, -// func(page *backup.ListBackupPlanTemplatesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Backup) ListBackupPlanTemplatesPages(input *ListBackupPlanTemplatesInput, fn func(*ListBackupPlanTemplatesOutput, bool) bool) error { - return c.ListBackupPlanTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListBackupPlanTemplatesPagesWithContext same as ListBackupPlanTemplatesPages 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 *Backup) ListBackupPlanTemplatesPagesWithContext(ctx aws.Context, input *ListBackupPlanTemplatesInput, fn func(*ListBackupPlanTemplatesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupPlanTemplatesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListBackupPlanTemplatesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListBackupPlanTemplatesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListBackupPlanVersions = "ListBackupPlanVersions" +const opGetSupportedResourceTypes = "GetSupportedResourceTypes" -// ListBackupPlanVersionsRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupPlanVersions operation. The "output" return +// GetSupportedResourceTypesRequest generates a "aws/request.Request" representing the +// client's request for the GetSupportedResourceTypes 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 ListBackupPlanVersions for more information on using the ListBackupPlanVersions +// See GetSupportedResourceTypes for more information on using the GetSupportedResourceTypes // 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 ListBackupPlanVersionsRequest method. -// req, resp := client.ListBackupPlanVersionsRequest(params) +// // Example sending a request using the GetSupportedResourceTypesRequest method. +// req, resp := client.GetSupportedResourceTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersions -func (c *Backup) ListBackupPlanVersionsRequest(input *ListBackupPlanVersionsInput) (req *request.Request, output *ListBackupPlanVersionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypes +func (c *Backup) GetSupportedResourceTypesRequest(input *GetSupportedResourceTypesInput) (req *request.Request, output *GetSupportedResourceTypesOutput) { op := &request.Operation{ - Name: opListBackupPlanVersions, + Name: opGetSupportedResourceTypes, HTTPMethod: "GET", - HTTPPath: "/backup/plans/{backupPlanId}/versions/", - Paginator: &request.Paginator{ - InputTokens: []string{"NextToken"}, - OutputTokens: []string{"NextToken"}, - LimitToken: "MaxResults", - TruncationToken: "", - }, + HTTPPath: "/supported-resource-types", } if input == nil { - input = &ListBackupPlanVersionsInput{} + input = &GetSupportedResourceTypesInput{} } - output = &ListBackupPlanVersionsOutput{} + output = &GetSupportedResourceTypesOutput{} req = c.newRequest(op, input, output) return } -// ListBackupPlanVersions API operation for AWS Backup. +// GetSupportedResourceTypes API operation for AWS Backup. // -// Returns version metadata of your backup plans, including Amazon Resource -// Names (ARNs), backup plan IDs, creation and deletion dates, plan names, and -// version IDs. +// Returns the Amazon Web Services resource types supported by Backup. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupPlanVersions for usage and error information. +// API operation GetSupportedResourceTypes for usage and error information. // // Returned Error Types: -// -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersions -func (c *Backup) ListBackupPlanVersions(input *ListBackupPlanVersionsInput) (*ListBackupPlanVersionsOutput, error) { - req, out := c.ListBackupPlanVersionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/GetSupportedResourceTypes +func (c *Backup) GetSupportedResourceTypes(input *GetSupportedResourceTypesInput) (*GetSupportedResourceTypesOutput, error) { + req, out := c.GetSupportedResourceTypesRequest(input) return out, req.Send() } -// ListBackupPlanVersionsWithContext is the same as ListBackupPlanVersions with the addition of +// GetSupportedResourceTypesWithContext is the same as GetSupportedResourceTypes with the addition of // the ability to pass a context and additional request options. // -// See ListBackupPlanVersions for details on how to use this API operation. +// See GetSupportedResourceTypes 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 *Backup) ListBackupPlanVersionsWithContext(ctx aws.Context, input *ListBackupPlanVersionsInput, opts ...request.Option) (*ListBackupPlanVersionsOutput, error) { - req, out := c.ListBackupPlanVersionsRequest(input) +func (c *Backup) GetSupportedResourceTypesWithContext(ctx aws.Context, input *GetSupportedResourceTypesInput, opts ...request.Option) (*GetSupportedResourceTypesOutput, error) { + req, out := c.GetSupportedResourceTypesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupPlanVersionsPages iterates over the pages of a ListBackupPlanVersions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListBackupPlanVersions 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 ListBackupPlanVersions operation. -// pageNum := 0 -// err := client.ListBackupPlanVersionsPages(params, -// func(page *backup.ListBackupPlanVersionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *Backup) ListBackupPlanVersionsPages(input *ListBackupPlanVersionsInput, fn func(*ListBackupPlanVersionsOutput, bool) bool) error { - return c.ListBackupPlanVersionsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListBackupPlanVersionsPagesWithContext same as ListBackupPlanVersionsPages 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 *Backup) ListBackupPlanVersionsPagesWithContext(ctx aws.Context, input *ListBackupPlanVersionsInput, fn func(*ListBackupPlanVersionsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupPlanVersionsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListBackupPlanVersionsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListBackupPlanVersionsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListBackupPlans = "ListBackupPlans" +const opListBackupJobSummaries = "ListBackupJobSummaries" -// ListBackupPlansRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupPlans operation. The "output" return +// ListBackupJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupJobSummaries 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 ListBackupPlans for more information on using the ListBackupPlans +// See ListBackupJobSummaries for more information on using the ListBackupJobSummaries // 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 ListBackupPlansRequest method. -// req, resp := client.ListBackupPlansRequest(params) +// // Example sending a request using the ListBackupJobSummariesRequest method. +// req, resp := client.ListBackupJobSummariesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlans -func (c *Backup) ListBackupPlansRequest(input *ListBackupPlansInput) (req *request.Request, output *ListBackupPlansOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries +func (c *Backup) ListBackupJobSummariesRequest(input *ListBackupJobSummariesInput) (req *request.Request, output *ListBackupJobSummariesOutput) { op := &request.Operation{ - Name: opListBackupPlans, + Name: opListBackupJobSummaries, HTTPMethod: "GET", - HTTPPath: "/backup/plans/", + HTTPPath: "/audit/backup-job-summaries", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4338,101 +4491,97 @@ func (c *Backup) ListBackupPlansRequest(input *ListBackupPlansInput) (req *reque } if input == nil { - input = &ListBackupPlansInput{} + input = &ListBackupJobSummariesInput{} } - output = &ListBackupPlansOutput{} + output = &ListBackupJobSummariesOutput{} req = c.newRequest(op, input, output) return } -// ListBackupPlans API operation for AWS Backup. +// ListBackupJobSummaries API operation for AWS Backup. // -// Returns a list of all active backup plans for an authenticated account. The -// list contains information such as Amazon Resource Names (ARNs), plan IDs, -// creation and deletion dates, version IDs, plan names, and creator request -// IDs. +// This is a request for a summary of backup jobs created or running within +// the most recent 30 days. You can include parameters AccountID, State, ResourceType, +// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// +// This request returns a summary that contains Region, Account, State, ResourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupPlans for usage and error information. +// API operation ListBackupJobSummaries for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlans -func (c *Backup) ListBackupPlans(input *ListBackupPlansInput) (*ListBackupPlansOutput, error) { - req, out := c.ListBackupPlansRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobSummaries +func (c *Backup) ListBackupJobSummaries(input *ListBackupJobSummariesInput) (*ListBackupJobSummariesOutput, error) { + req, out := c.ListBackupJobSummariesRequest(input) return out, req.Send() } -// ListBackupPlansWithContext is the same as ListBackupPlans with the addition of +// ListBackupJobSummariesWithContext is the same as ListBackupJobSummaries with the addition of // the ability to pass a context and additional request options. // -// See ListBackupPlans for details on how to use this API operation. +// See ListBackupJobSummaries 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 *Backup) ListBackupPlansWithContext(ctx aws.Context, input *ListBackupPlansInput, opts ...request.Option) (*ListBackupPlansOutput, error) { - req, out := c.ListBackupPlansRequest(input) +func (c *Backup) ListBackupJobSummariesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, opts ...request.Option) (*ListBackupJobSummariesOutput, error) { + req, out := c.ListBackupJobSummariesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupPlansPages iterates over the pages of a ListBackupPlans operation, +// ListBackupJobSummariesPages iterates over the pages of a ListBackupJobSummaries operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListBackupPlans method for more information on how to use this operation. +// See ListBackupJobSummaries 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 ListBackupPlans operation. +// // Example iterating over at most 3 pages of a ListBackupJobSummaries operation. // pageNum := 0 -// err := client.ListBackupPlansPages(params, -// func(page *backup.ListBackupPlansOutput, lastPage bool) bool { +// err := client.ListBackupJobSummariesPages(params, +// func(page *backup.ListBackupJobSummariesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListBackupPlansPages(input *ListBackupPlansInput, fn func(*ListBackupPlansOutput, bool) bool) error { - return c.ListBackupPlansPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupJobSummariesPages(input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool) error { + return c.ListBackupJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListBackupPlansPagesWithContext same as ListBackupPlansPages except +// ListBackupJobSummariesPagesWithContext same as ListBackupJobSummariesPages 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 *Backup) ListBackupPlansPagesWithContext(ctx aws.Context, input *ListBackupPlansInput, fn func(*ListBackupPlansOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupJobSummariesPagesWithContext(ctx aws.Context, input *ListBackupJobSummariesInput, fn func(*ListBackupJobSummariesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupPlansInput + var inCpy *ListBackupJobSummariesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListBackupPlansRequest(inCpy) + req, _ := c.ListBackupJobSummariesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4440,7 +4589,7 @@ func (c *Backup) ListBackupPlansPagesWithContext(ctx aws.Context, input *ListBac } for p.Next() { - if !fn(p.Page().(*ListBackupPlansOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupJobSummariesOutput), !p.HasNextPage()) { break } } @@ -4448,36 +4597,36 @@ func (c *Backup) ListBackupPlansPagesWithContext(ctx aws.Context, input *ListBac return p.Err() } -const opListBackupSelections = "ListBackupSelections" +const opListBackupJobs = "ListBackupJobs" -// ListBackupSelectionsRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupSelections operation. The "output" return +// ListBackupJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupJobs 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 ListBackupSelections for more information on using the ListBackupSelections +// See ListBackupJobs for more information on using the ListBackupJobs // 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 ListBackupSelectionsRequest method. -// req, resp := client.ListBackupSelectionsRequest(params) +// // Example sending a request using the ListBackupJobsRequest method. +// req, resp := client.ListBackupJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelections -func (c *Backup) ListBackupSelectionsRequest(input *ListBackupSelectionsInput) (req *request.Request, output *ListBackupSelectionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs +func (c *Backup) ListBackupJobsRequest(input *ListBackupJobsInput) (req *request.Request, output *ListBackupJobsOutput) { op := &request.Operation{ - Name: opListBackupSelections, + Name: opListBackupJobs, HTTPMethod: "GET", - HTTPPath: "/backup/plans/{backupPlanId}/selections/", + HTTPPath: "/backup-jobs/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4487,99 +4636,94 @@ func (c *Backup) ListBackupSelectionsRequest(input *ListBackupSelectionsInput) ( } if input == nil { - input = &ListBackupSelectionsInput{} + input = &ListBackupJobsInput{} } - output = &ListBackupSelectionsOutput{} + output = &ListBackupJobsOutput{} req = c.newRequest(op, input, output) return } -// ListBackupSelections API operation for AWS Backup. +// ListBackupJobs API operation for AWS Backup. // -// Returns an array containing metadata of the resources associated with the -// target backup plan. +// Returns a list of existing backup jobs for an authenticated account for the +// last 30 days. For a longer period of time, consider using these monitoring +// tools (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupSelections for usage and error information. +// API operation ListBackupJobs for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelections -func (c *Backup) ListBackupSelections(input *ListBackupSelectionsInput) (*ListBackupSelectionsOutput, error) { - req, out := c.ListBackupSelectionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupJobs +func (c *Backup) ListBackupJobs(input *ListBackupJobsInput) (*ListBackupJobsOutput, error) { + req, out := c.ListBackupJobsRequest(input) return out, req.Send() } -// ListBackupSelectionsWithContext is the same as ListBackupSelections with the addition of +// ListBackupJobsWithContext is the same as ListBackupJobs with the addition of // the ability to pass a context and additional request options. // -// See ListBackupSelections for details on how to use this API operation. +// See ListBackupJobs 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 *Backup) ListBackupSelectionsWithContext(ctx aws.Context, input *ListBackupSelectionsInput, opts ...request.Option) (*ListBackupSelectionsOutput, error) { - req, out := c.ListBackupSelectionsRequest(input) +func (c *Backup) ListBackupJobsWithContext(ctx aws.Context, input *ListBackupJobsInput, opts ...request.Option) (*ListBackupJobsOutput, error) { + req, out := c.ListBackupJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupSelectionsPages iterates over the pages of a ListBackupSelections operation, +// ListBackupJobsPages iterates over the pages of a ListBackupJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListBackupSelections method for more information on how to use this operation. +// See ListBackupJobs 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 ListBackupSelections operation. +// // Example iterating over at most 3 pages of a ListBackupJobs operation. // pageNum := 0 -// err := client.ListBackupSelectionsPages(params, -// func(page *backup.ListBackupSelectionsOutput, lastPage bool) bool { +// err := client.ListBackupJobsPages(params, +// func(page *backup.ListBackupJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListBackupSelectionsPages(input *ListBackupSelectionsInput, fn func(*ListBackupSelectionsOutput, bool) bool) error { - return c.ListBackupSelectionsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupJobsPages(input *ListBackupJobsInput, fn func(*ListBackupJobsOutput, bool) bool) error { + return c.ListBackupJobsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListBackupSelectionsPagesWithContext same as ListBackupSelectionsPages except +// ListBackupJobsPagesWithContext same as ListBackupJobsPages 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 *Backup) ListBackupSelectionsPagesWithContext(ctx aws.Context, input *ListBackupSelectionsInput, fn func(*ListBackupSelectionsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupJobsPagesWithContext(ctx aws.Context, input *ListBackupJobsInput, fn func(*ListBackupJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupSelectionsInput + var inCpy *ListBackupJobsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListBackupSelectionsRequest(inCpy) + req, _ := c.ListBackupJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4587,7 +4731,7 @@ func (c *Backup) ListBackupSelectionsPagesWithContext(ctx aws.Context, input *Li } for p.Next() { - if !fn(p.Page().(*ListBackupSelectionsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupJobsOutput), !p.HasNextPage()) { break } } @@ -4595,36 +4739,36 @@ func (c *Backup) ListBackupSelectionsPagesWithContext(ctx aws.Context, input *Li return p.Err() } -const opListBackupVaults = "ListBackupVaults" +const opListBackupPlanTemplates = "ListBackupPlanTemplates" -// ListBackupVaultsRequest generates a "aws/request.Request" representing the -// client's request for the ListBackupVaults operation. The "output" return +// ListBackupPlanTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupPlanTemplates 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 ListBackupVaults for more information on using the ListBackupVaults +// See ListBackupPlanTemplates for more information on using the ListBackupPlanTemplates // 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 ListBackupVaultsRequest method. -// req, resp := client.ListBackupVaultsRequest(params) +// // Example sending a request using the ListBackupPlanTemplatesRequest method. +// req, resp := client.ListBackupPlanTemplatesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaults -func (c *Backup) ListBackupVaultsRequest(input *ListBackupVaultsInput) (req *request.Request, output *ListBackupVaultsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplates +func (c *Backup) ListBackupPlanTemplatesRequest(input *ListBackupPlanTemplatesInput) (req *request.Request, output *ListBackupPlanTemplatesOutput) { op := &request.Operation{ - Name: opListBackupVaults, + Name: opListBackupPlanTemplates, HTTPMethod: "GET", - HTTPPath: "/backup-vaults/", + HTTPPath: "/backup/template/plans", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4634,31 +4778,28 @@ func (c *Backup) ListBackupVaultsRequest(input *ListBackupVaultsInput) (req *req } if input == nil { - input = &ListBackupVaultsInput{} + input = &ListBackupPlanTemplatesInput{} } - output = &ListBackupVaultsOutput{} + output = &ListBackupPlanTemplatesOutput{} req = c.newRequest(op, input, output) return } -// ListBackupVaults API operation for AWS Backup. +// ListBackupPlanTemplates API operation for AWS Backup. // -// Returns a list of recovery point storage containers along with information -// about them. +// Returns metadata of your saved backup plan templates, including the template +// ID, name, and the creation and deletion dates. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListBackupVaults for usage and error information. +// API operation ListBackupPlanTemplates for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. @@ -4669,64 +4810,67 @@ func (c *Backup) ListBackupVaultsRequest(input *ListBackupVaultsInput) (req *req // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaults -func (c *Backup) ListBackupVaults(input *ListBackupVaultsInput) (*ListBackupVaultsOutput, error) { - req, out := c.ListBackupVaultsRequest(input) +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanTemplates +func (c *Backup) ListBackupPlanTemplates(input *ListBackupPlanTemplatesInput) (*ListBackupPlanTemplatesOutput, error) { + req, out := c.ListBackupPlanTemplatesRequest(input) return out, req.Send() } -// ListBackupVaultsWithContext is the same as ListBackupVaults with the addition of +// ListBackupPlanTemplatesWithContext is the same as ListBackupPlanTemplates with the addition of // the ability to pass a context and additional request options. // -// See ListBackupVaults for details on how to use this API operation. +// See ListBackupPlanTemplates 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 *Backup) ListBackupVaultsWithContext(ctx aws.Context, input *ListBackupVaultsInput, opts ...request.Option) (*ListBackupVaultsOutput, error) { - req, out := c.ListBackupVaultsRequest(input) +func (c *Backup) ListBackupPlanTemplatesWithContext(ctx aws.Context, input *ListBackupPlanTemplatesInput, opts ...request.Option) (*ListBackupPlanTemplatesOutput, error) { + req, out := c.ListBackupPlanTemplatesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListBackupVaultsPages iterates over the pages of a ListBackupVaults operation, +// ListBackupPlanTemplatesPages iterates over the pages of a ListBackupPlanTemplates operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListBackupVaults method for more information on how to use this operation. +// See ListBackupPlanTemplates 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 ListBackupVaults operation. +// // Example iterating over at most 3 pages of a ListBackupPlanTemplates operation. // pageNum := 0 -// err := client.ListBackupVaultsPages(params, -// func(page *backup.ListBackupVaultsOutput, lastPage bool) bool { +// err := client.ListBackupPlanTemplatesPages(params, +// func(page *backup.ListBackupPlanTemplatesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListBackupVaultsPages(input *ListBackupVaultsInput, fn func(*ListBackupVaultsOutput, bool) bool) error { - return c.ListBackupVaultsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupPlanTemplatesPages(input *ListBackupPlanTemplatesInput, fn func(*ListBackupPlanTemplatesOutput, bool) bool) error { + return c.ListBackupPlanTemplatesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListBackupVaultsPagesWithContext same as ListBackupVaultsPages except +// ListBackupPlanTemplatesPagesWithContext same as ListBackupPlanTemplatesPages 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 *Backup) ListBackupVaultsPagesWithContext(ctx aws.Context, input *ListBackupVaultsInput, fn func(*ListBackupVaultsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupPlanTemplatesPagesWithContext(ctx aws.Context, input *ListBackupPlanTemplatesInput, fn func(*ListBackupPlanTemplatesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListBackupVaultsInput + var inCpy *ListBackupPlanTemplatesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListBackupVaultsRequest(inCpy) + req, _ := c.ListBackupPlanTemplatesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4734,7 +4878,7 @@ func (c *Backup) ListBackupVaultsPagesWithContext(ctx aws.Context, input *ListBa } for p.Next() { - if !fn(p.Page().(*ListBackupVaultsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupPlanTemplatesOutput), !p.HasNextPage()) { break } } @@ -4742,36 +4886,36 @@ func (c *Backup) ListBackupVaultsPagesWithContext(ctx aws.Context, input *ListBa return p.Err() } -const opListCopyJobSummaries = "ListCopyJobSummaries" +const opListBackupPlanVersions = "ListBackupPlanVersions" -// ListCopyJobSummariesRequest generates a "aws/request.Request" representing the -// client's request for the ListCopyJobSummaries operation. The "output" return +// ListBackupPlanVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupPlanVersions 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 ListCopyJobSummaries for more information on using the ListCopyJobSummaries +// See ListBackupPlanVersions for more information on using the ListBackupPlanVersions // 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 ListCopyJobSummariesRequest method. -// req, resp := client.ListCopyJobSummariesRequest(params) +// // Example sending a request using the ListBackupPlanVersionsRequest method. +// req, resp := client.ListBackupPlanVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries -func (c *Backup) ListCopyJobSummariesRequest(input *ListCopyJobSummariesInput) (req *request.Request, output *ListCopyJobSummariesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersions +func (c *Backup) ListBackupPlanVersionsRequest(input *ListBackupPlanVersionsInput) (req *request.Request, output *ListBackupPlanVersionsOutput) { op := &request.Operation{ - Name: opListCopyJobSummaries, + Name: opListBackupPlanVersions, HTTPMethod: "GET", - HTTPPath: "/audit/copy-job-summaries", + HTTPPath: "/backup/plans/{backupPlanId}/versions/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4781,97 +4925,100 @@ func (c *Backup) ListCopyJobSummariesRequest(input *ListCopyJobSummariesInput) ( } if input == nil { - input = &ListCopyJobSummariesInput{} + input = &ListBackupPlanVersionsInput{} } - output = &ListCopyJobSummariesOutput{} + output = &ListBackupPlanVersionsOutput{} req = c.newRequest(op, input, output) return } -// ListCopyJobSummaries API operation for AWS Backup. -// -// This request obtains a list of copy jobs created or running within the the -// most recent 30 days. You can include parameters AccountID, State, ResourceType, -// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// ListBackupPlanVersions API operation for AWS Backup. // -// This request returns a summary that contains Region, Account, State, RestourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. +// Returns version metadata of your backup plans, including Amazon Resource +// Names (ARNs), backup plan IDs, creation and deletion dates, plan names, and +// version IDs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListCopyJobSummaries for usage and error information. +// API operation ListBackupPlanVersions for usage and error information. // // Returned Error Types: // +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries -func (c *Backup) ListCopyJobSummaries(input *ListCopyJobSummariesInput) (*ListCopyJobSummariesOutput, error) { - req, out := c.ListCopyJobSummariesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlanVersions +func (c *Backup) ListBackupPlanVersions(input *ListBackupPlanVersionsInput) (*ListBackupPlanVersionsOutput, error) { + req, out := c.ListBackupPlanVersionsRequest(input) return out, req.Send() } -// ListCopyJobSummariesWithContext is the same as ListCopyJobSummaries with the addition of +// ListBackupPlanVersionsWithContext is the same as ListBackupPlanVersions with the addition of // the ability to pass a context and additional request options. // -// See ListCopyJobSummaries for details on how to use this API operation. +// See ListBackupPlanVersions 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 *Backup) ListCopyJobSummariesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, opts ...request.Option) (*ListCopyJobSummariesOutput, error) { - req, out := c.ListCopyJobSummariesRequest(input) +func (c *Backup) ListBackupPlanVersionsWithContext(ctx aws.Context, input *ListBackupPlanVersionsInput, opts ...request.Option) (*ListBackupPlanVersionsOutput, error) { + req, out := c.ListBackupPlanVersionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListCopyJobSummariesPages iterates over the pages of a ListCopyJobSummaries operation, +// ListBackupPlanVersionsPages iterates over the pages of a ListBackupPlanVersions operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListCopyJobSummaries method for more information on how to use this operation. +// See ListBackupPlanVersions 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 ListCopyJobSummaries operation. +// // Example iterating over at most 3 pages of a ListBackupPlanVersions operation. // pageNum := 0 -// err := client.ListCopyJobSummariesPages(params, -// func(page *backup.ListCopyJobSummariesOutput, lastPage bool) bool { +// err := client.ListBackupPlanVersionsPages(params, +// func(page *backup.ListBackupPlanVersionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListCopyJobSummariesPages(input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool) error { - return c.ListCopyJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupPlanVersionsPages(input *ListBackupPlanVersionsInput, fn func(*ListBackupPlanVersionsOutput, bool) bool) error { + return c.ListBackupPlanVersionsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListCopyJobSummariesPagesWithContext same as ListCopyJobSummariesPages except +// ListBackupPlanVersionsPagesWithContext same as ListBackupPlanVersionsPages 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 *Backup) ListCopyJobSummariesPagesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupPlanVersionsPagesWithContext(ctx aws.Context, input *ListBackupPlanVersionsInput, fn func(*ListBackupPlanVersionsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListCopyJobSummariesInput + var inCpy *ListBackupPlanVersionsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListCopyJobSummariesRequest(inCpy) + req, _ := c.ListBackupPlanVersionsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -4879,7 +5026,7 @@ func (c *Backup) ListCopyJobSummariesPagesWithContext(ctx aws.Context, input *Li } for p.Next() { - if !fn(p.Page().(*ListCopyJobSummariesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupPlanVersionsOutput), !p.HasNextPage()) { break } } @@ -4887,36 +5034,36 @@ func (c *Backup) ListCopyJobSummariesPagesWithContext(ctx aws.Context, input *Li return p.Err() } -const opListCopyJobs = "ListCopyJobs" +const opListBackupPlans = "ListBackupPlans" -// ListCopyJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListCopyJobs operation. The "output" return +// ListBackupPlansRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupPlans 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 ListCopyJobs for more information on using the ListCopyJobs +// See ListBackupPlans for more information on using the ListBackupPlans // 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 ListCopyJobsRequest method. -// req, resp := client.ListCopyJobsRequest(params) +// // Example sending a request using the ListBackupPlansRequest method. +// req, resp := client.ListBackupPlansRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs -func (c *Backup) ListCopyJobsRequest(input *ListCopyJobsInput) (req *request.Request, output *ListCopyJobsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlans +func (c *Backup) ListBackupPlansRequest(input *ListBackupPlansInput) (req *request.Request, output *ListBackupPlansOutput) { op := &request.Operation{ - Name: opListCopyJobs, + Name: opListBackupPlans, HTTPMethod: "GET", - HTTPPath: "/copy-jobs/", + HTTPPath: "/backup/plans/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -4926,92 +5073,101 @@ func (c *Backup) ListCopyJobsRequest(input *ListCopyJobsInput) (req *request.Req } if input == nil { - input = &ListCopyJobsInput{} + input = &ListBackupPlansInput{} } - output = &ListCopyJobsOutput{} + output = &ListBackupPlansOutput{} req = c.newRequest(op, input, output) return } -// ListCopyJobs API operation for AWS Backup. +// ListBackupPlans API operation for AWS Backup. // -// Returns metadata about your copy jobs. +// Returns a list of all active backup plans for an authenticated account. The +// list contains information such as Amazon Resource Names (ARNs), plan IDs, +// creation and deletion dates, version IDs, plan names, and creator request +// IDs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListCopyJobs for usage and error information. +// API operation ListBackupPlans for usage and error information. // // Returned Error Types: // +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs -func (c *Backup) ListCopyJobs(input *ListCopyJobsInput) (*ListCopyJobsOutput, error) { - req, out := c.ListCopyJobsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupPlans +func (c *Backup) ListBackupPlans(input *ListBackupPlansInput) (*ListBackupPlansOutput, error) { + req, out := c.ListBackupPlansRequest(input) return out, req.Send() } -// ListCopyJobsWithContext is the same as ListCopyJobs with the addition of +// ListBackupPlansWithContext is the same as ListBackupPlans with the addition of // the ability to pass a context and additional request options. // -// See ListCopyJobs for details on how to use this API operation. +// See ListBackupPlans 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 *Backup) ListCopyJobsWithContext(ctx aws.Context, input *ListCopyJobsInput, opts ...request.Option) (*ListCopyJobsOutput, error) { - req, out := c.ListCopyJobsRequest(input) +func (c *Backup) ListBackupPlansWithContext(ctx aws.Context, input *ListBackupPlansInput, opts ...request.Option) (*ListBackupPlansOutput, error) { + req, out := c.ListBackupPlansRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListCopyJobsPages iterates over the pages of a ListCopyJobs operation, +// ListBackupPlansPages iterates over the pages of a ListBackupPlans operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListCopyJobs method for more information on how to use this operation. +// See ListBackupPlans 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 ListCopyJobs operation. +// // Example iterating over at most 3 pages of a ListBackupPlans operation. // pageNum := 0 -// err := client.ListCopyJobsPages(params, -// func(page *backup.ListCopyJobsOutput, lastPage bool) bool { +// err := client.ListBackupPlansPages(params, +// func(page *backup.ListBackupPlansOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListCopyJobsPages(input *ListCopyJobsInput, fn func(*ListCopyJobsOutput, bool) bool) error { - return c.ListCopyJobsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupPlansPages(input *ListBackupPlansInput, fn func(*ListBackupPlansOutput, bool) bool) error { + return c.ListBackupPlansPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListCopyJobsPagesWithContext same as ListCopyJobsPages except +// ListBackupPlansPagesWithContext same as ListBackupPlansPages 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 *Backup) ListCopyJobsPagesWithContext(ctx aws.Context, input *ListCopyJobsInput, fn func(*ListCopyJobsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupPlansPagesWithContext(ctx aws.Context, input *ListBackupPlansInput, fn func(*ListBackupPlansOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListCopyJobsInput + var inCpy *ListBackupPlansInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListCopyJobsRequest(inCpy) + req, _ := c.ListBackupPlansRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5019,7 +5175,7 @@ func (c *Backup) ListCopyJobsPagesWithContext(ctx aws.Context, input *ListCopyJo } for p.Next() { - if !fn(p.Page().(*ListCopyJobsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupPlansOutput), !p.HasNextPage()) { break } } @@ -5027,36 +5183,36 @@ func (c *Backup) ListCopyJobsPagesWithContext(ctx aws.Context, input *ListCopyJo return p.Err() } -const opListFrameworks = "ListFrameworks" +const opListBackupSelections = "ListBackupSelections" -// ListFrameworksRequest generates a "aws/request.Request" representing the -// client's request for the ListFrameworks operation. The "output" return +// ListBackupSelectionsRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupSelections 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 ListFrameworks for more information on using the ListFrameworks +// See ListBackupSelections for more information on using the ListBackupSelections // 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 ListFrameworksRequest method. -// req, resp := client.ListFrameworksRequest(params) +// // Example sending a request using the ListBackupSelectionsRequest method. +// req, resp := client.ListBackupSelectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworks -func (c *Backup) ListFrameworksRequest(input *ListFrameworksInput) (req *request.Request, output *ListFrameworksOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelections +func (c *Backup) ListBackupSelectionsRequest(input *ListBackupSelectionsInput) (req *request.Request, output *ListBackupSelectionsOutput) { op := &request.Operation{ - Name: opListFrameworks, + Name: opListBackupSelections, HTTPMethod: "GET", - HTTPPath: "/audit/frameworks", + HTTPPath: "/backup/plans/{backupPlanId}/selections/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5066,93 +5222,99 @@ func (c *Backup) ListFrameworksRequest(input *ListFrameworksInput) (req *request } if input == nil { - input = &ListFrameworksInput{} + input = &ListBackupSelectionsInput{} } - output = &ListFrameworksOutput{} + output = &ListBackupSelectionsOutput{} req = c.newRequest(op, input, output) return } -// ListFrameworks API operation for AWS Backup. +// ListBackupSelections API operation for AWS Backup. // -// Returns a list of all frameworks for an Amazon Web Services account and Amazon -// Web Services Region. +// Returns an array containing metadata of the resources associated with the +// target backup plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListFrameworks for usage and error information. +// API operation ListBackupSelections for usage and error information. // // Returned Error Types: // -// - InvalidParameterValueException -// Indicates that something is wrong with a parameter's value. For example, +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworks -func (c *Backup) ListFrameworks(input *ListFrameworksInput) (*ListFrameworksOutput, error) { - req, out := c.ListFrameworksRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupSelections +func (c *Backup) ListBackupSelections(input *ListBackupSelectionsInput) (*ListBackupSelectionsOutput, error) { + req, out := c.ListBackupSelectionsRequest(input) return out, req.Send() } -// ListFrameworksWithContext is the same as ListFrameworks with the addition of +// ListBackupSelectionsWithContext is the same as ListBackupSelections with the addition of // the ability to pass a context and additional request options. // -// See ListFrameworks for details on how to use this API operation. +// See ListBackupSelections 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 *Backup) ListFrameworksWithContext(ctx aws.Context, input *ListFrameworksInput, opts ...request.Option) (*ListFrameworksOutput, error) { - req, out := c.ListFrameworksRequest(input) +func (c *Backup) ListBackupSelectionsWithContext(ctx aws.Context, input *ListBackupSelectionsInput, opts ...request.Option) (*ListBackupSelectionsOutput, error) { + req, out := c.ListBackupSelectionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListFrameworksPages iterates over the pages of a ListFrameworks operation, +// ListBackupSelectionsPages iterates over the pages of a ListBackupSelections operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListFrameworks method for more information on how to use this operation. +// See ListBackupSelections 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 ListFrameworks operation. +// // Example iterating over at most 3 pages of a ListBackupSelections operation. // pageNum := 0 -// err := client.ListFrameworksPages(params, -// func(page *backup.ListFrameworksOutput, lastPage bool) bool { +// err := client.ListBackupSelectionsPages(params, +// func(page *backup.ListBackupSelectionsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListFrameworksPages(input *ListFrameworksInput, fn func(*ListFrameworksOutput, bool) bool) error { - return c.ListFrameworksPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupSelectionsPages(input *ListBackupSelectionsInput, fn func(*ListBackupSelectionsOutput, bool) bool) error { + return c.ListBackupSelectionsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListFrameworksPagesWithContext same as ListFrameworksPages except +// ListBackupSelectionsPagesWithContext same as ListBackupSelectionsPages 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 *Backup) ListFrameworksPagesWithContext(ctx aws.Context, input *ListFrameworksInput, fn func(*ListFrameworksOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupSelectionsPagesWithContext(ctx aws.Context, input *ListBackupSelectionsInput, fn func(*ListBackupSelectionsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListFrameworksInput + var inCpy *ListBackupSelectionsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListFrameworksRequest(inCpy) + req, _ := c.ListBackupSelectionsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5160,7 +5322,7 @@ func (c *Backup) ListFrameworksPagesWithContext(ctx aws.Context, input *ListFram } for p.Next() { - if !fn(p.Page().(*ListFrameworksOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupSelectionsOutput), !p.HasNextPage()) { break } } @@ -5168,36 +5330,36 @@ func (c *Backup) ListFrameworksPagesWithContext(ctx aws.Context, input *ListFram return p.Err() } -const opListLegalHolds = "ListLegalHolds" +const opListBackupVaults = "ListBackupVaults" -// ListLegalHoldsRequest generates a "aws/request.Request" representing the -// client's request for the ListLegalHolds operation. The "output" return +// ListBackupVaultsRequest generates a "aws/request.Request" representing the +// client's request for the ListBackupVaults 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 ListLegalHolds for more information on using the ListLegalHolds +// See ListBackupVaults for more information on using the ListBackupVaults // 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 ListLegalHoldsRequest method. -// req, resp := client.ListLegalHoldsRequest(params) +// // Example sending a request using the ListBackupVaultsRequest method. +// req, resp := client.ListBackupVaultsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListLegalHolds -func (c *Backup) ListLegalHoldsRequest(input *ListLegalHoldsInput) (req *request.Request, output *ListLegalHoldsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaults +func (c *Backup) ListBackupVaultsRequest(input *ListBackupVaultsInput) (req *request.Request, output *ListBackupVaultsOutput) { op := &request.Operation{ - Name: opListLegalHolds, + Name: opListBackupVaults, HTTPMethod: "GET", - HTTPPath: "/legal-holds/", + HTTPPath: "/backup-vaults/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5207,92 +5369,99 @@ func (c *Backup) ListLegalHoldsRequest(input *ListLegalHoldsInput) (req *request } if input == nil { - input = &ListLegalHoldsInput{} + input = &ListBackupVaultsInput{} } - output = &ListLegalHoldsOutput{} + output = &ListBackupVaultsOutput{} req = c.newRequest(op, input, output) return } -// ListLegalHolds API operation for AWS Backup. +// ListBackupVaults API operation for AWS Backup. // -// This action returns metadata about active and previous legal holds. +// Returns a list of recovery point storage containers along with information +// about them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListLegalHolds for usage and error information. +// API operation ListBackupVaults for usage and error information. // // Returned Error Types: // +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListLegalHolds -func (c *Backup) ListLegalHolds(input *ListLegalHoldsInput) (*ListLegalHoldsOutput, error) { - req, out := c.ListLegalHoldsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListBackupVaults +func (c *Backup) ListBackupVaults(input *ListBackupVaultsInput) (*ListBackupVaultsOutput, error) { + req, out := c.ListBackupVaultsRequest(input) return out, req.Send() } -// ListLegalHoldsWithContext is the same as ListLegalHolds with the addition of +// ListBackupVaultsWithContext is the same as ListBackupVaults with the addition of // the ability to pass a context and additional request options. // -// See ListLegalHolds for details on how to use this API operation. +// See ListBackupVaults 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 *Backup) ListLegalHoldsWithContext(ctx aws.Context, input *ListLegalHoldsInput, opts ...request.Option) (*ListLegalHoldsOutput, error) { - req, out := c.ListLegalHoldsRequest(input) +func (c *Backup) ListBackupVaultsWithContext(ctx aws.Context, input *ListBackupVaultsInput, opts ...request.Option) (*ListBackupVaultsOutput, error) { + req, out := c.ListBackupVaultsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLegalHoldsPages iterates over the pages of a ListLegalHolds operation, +// ListBackupVaultsPages iterates over the pages of a ListBackupVaults operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListLegalHolds method for more information on how to use this operation. +// See ListBackupVaults 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 ListLegalHolds operation. +// // Example iterating over at most 3 pages of a ListBackupVaults operation. // pageNum := 0 -// err := client.ListLegalHoldsPages(params, -// func(page *backup.ListLegalHoldsOutput, lastPage bool) bool { +// err := client.ListBackupVaultsPages(params, +// func(page *backup.ListBackupVaultsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListLegalHoldsPages(input *ListLegalHoldsInput, fn func(*ListLegalHoldsOutput, bool) bool) error { - return c.ListLegalHoldsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListBackupVaultsPages(input *ListBackupVaultsInput, fn func(*ListBackupVaultsOutput, bool) bool) error { + return c.ListBackupVaultsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListLegalHoldsPagesWithContext same as ListLegalHoldsPages except +// ListBackupVaultsPagesWithContext same as ListBackupVaultsPages 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 *Backup) ListLegalHoldsPagesWithContext(ctx aws.Context, input *ListLegalHoldsInput, fn func(*ListLegalHoldsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListBackupVaultsPagesWithContext(ctx aws.Context, input *ListBackupVaultsInput, fn func(*ListBackupVaultsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListLegalHoldsInput + var inCpy *ListBackupVaultsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListLegalHoldsRequest(inCpy) + req, _ := c.ListBackupVaultsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5300,7 +5469,7 @@ func (c *Backup) ListLegalHoldsPagesWithContext(ctx aws.Context, input *ListLega } for p.Next() { - if !fn(p.Page().(*ListLegalHoldsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListBackupVaultsOutput), !p.HasNextPage()) { break } } @@ -5308,36 +5477,36 @@ func (c *Backup) ListLegalHoldsPagesWithContext(ctx aws.Context, input *ListLega return p.Err() } -const opListProtectedResources = "ListProtectedResources" +const opListCopyJobSummaries = "ListCopyJobSummaries" -// ListProtectedResourcesRequest generates a "aws/request.Request" representing the -// client's request for the ListProtectedResources operation. The "output" return +// ListCopyJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListCopyJobSummaries 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 ListProtectedResources for more information on using the ListProtectedResources +// See ListCopyJobSummaries for more information on using the ListCopyJobSummaries // 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 ListProtectedResourcesRequest method. -// req, resp := client.ListProtectedResourcesRequest(params) +// // Example sending a request using the ListCopyJobSummariesRequest method. +// req, resp := client.ListCopyJobSummariesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResources -func (c *Backup) ListProtectedResourcesRequest(input *ListProtectedResourcesInput) (req *request.Request, output *ListProtectedResourcesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries +func (c *Backup) ListCopyJobSummariesRequest(input *ListCopyJobSummariesInput) (req *request.Request, output *ListCopyJobSummariesOutput) { op := &request.Operation{ - Name: opListProtectedResources, + Name: opListCopyJobSummaries, HTTPMethod: "GET", - HTTPPath: "/resources/", + HTTPPath: "/audit/copy-job-summaries", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5347,26 +5516,29 @@ func (c *Backup) ListProtectedResourcesRequest(input *ListProtectedResourcesInpu } if input == nil { - input = &ListProtectedResourcesInput{} + input = &ListCopyJobSummariesInput{} } - output = &ListProtectedResourcesOutput{} + output = &ListCopyJobSummariesOutput{} req = c.newRequest(op, input, output) return } -// ListProtectedResources API operation for AWS Backup. +// ListCopyJobSummaries API operation for AWS Backup. // -// Returns an array of resources successfully backed up by Backup, including -// the time the resource was saved, an Amazon Resource Name (ARN) of the resource, -// and a resource type. +// This request obtains a list of copy jobs created or running within the the +// most recent 30 days. You can include parameters AccountID, State, ResourceType, +// MessageCategory, AggregationPeriod, MaxResults, or NextToken to filter results. +// +// This request returns a summary that contains Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListProtectedResources for usage and error information. +// API operation ListCopyJobSummaries for usage and error information. // // Returned Error Types: // @@ -5377,64 +5549,64 @@ func (c *Backup) ListProtectedResourcesRequest(input *ListProtectedResourcesInpu // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResources -func (c *Backup) ListProtectedResources(input *ListProtectedResourcesInput) (*ListProtectedResourcesOutput, error) { - req, out := c.ListProtectedResourcesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobSummaries +func (c *Backup) ListCopyJobSummaries(input *ListCopyJobSummariesInput) (*ListCopyJobSummariesOutput, error) { + req, out := c.ListCopyJobSummariesRequest(input) return out, req.Send() } -// ListProtectedResourcesWithContext is the same as ListProtectedResources with the addition of +// ListCopyJobSummariesWithContext is the same as ListCopyJobSummaries with the addition of // the ability to pass a context and additional request options. // -// See ListProtectedResources for details on how to use this API operation. +// See ListCopyJobSummaries 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 *Backup) ListProtectedResourcesWithContext(ctx aws.Context, input *ListProtectedResourcesInput, opts ...request.Option) (*ListProtectedResourcesOutput, error) { - req, out := c.ListProtectedResourcesRequest(input) +func (c *Backup) ListCopyJobSummariesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, opts ...request.Option) (*ListCopyJobSummariesOutput, error) { + req, out := c.ListCopyJobSummariesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListProtectedResourcesPages iterates over the pages of a ListProtectedResources operation, +// ListCopyJobSummariesPages iterates over the pages of a ListCopyJobSummaries operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListProtectedResources method for more information on how to use this operation. +// See ListCopyJobSummaries 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 ListProtectedResources operation. +// // Example iterating over at most 3 pages of a ListCopyJobSummaries operation. // pageNum := 0 -// err := client.ListProtectedResourcesPages(params, -// func(page *backup.ListProtectedResourcesOutput, lastPage bool) bool { +// err := client.ListCopyJobSummariesPages(params, +// func(page *backup.ListCopyJobSummariesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListProtectedResourcesPages(input *ListProtectedResourcesInput, fn func(*ListProtectedResourcesOutput, bool) bool) error { - return c.ListProtectedResourcesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListCopyJobSummariesPages(input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool) error { + return c.ListCopyJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListProtectedResourcesPagesWithContext same as ListProtectedResourcesPages except +// ListCopyJobSummariesPagesWithContext same as ListCopyJobSummariesPages 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 *Backup) ListProtectedResourcesPagesWithContext(ctx aws.Context, input *ListProtectedResourcesInput, fn func(*ListProtectedResourcesOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListCopyJobSummariesPagesWithContext(ctx aws.Context, input *ListCopyJobSummariesInput, fn func(*ListCopyJobSummariesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListProtectedResourcesInput + var inCpy *ListCopyJobSummariesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListProtectedResourcesRequest(inCpy) + req, _ := c.ListCopyJobSummariesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5442,7 +5614,7 @@ func (c *Backup) ListProtectedResourcesPagesWithContext(ctx aws.Context, input * } for p.Next() { - if !fn(p.Page().(*ListProtectedResourcesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListCopyJobSummariesOutput), !p.HasNextPage()) { break } } @@ -5450,36 +5622,36 @@ func (c *Backup) ListProtectedResourcesPagesWithContext(ctx aws.Context, input * return p.Err() } -const opListProtectedResourcesByBackupVault = "ListProtectedResourcesByBackupVault" +const opListCopyJobs = "ListCopyJobs" -// ListProtectedResourcesByBackupVaultRequest generates a "aws/request.Request" representing the -// client's request for the ListProtectedResourcesByBackupVault operation. The "output" return +// ListCopyJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListCopyJobs 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 ListProtectedResourcesByBackupVault for more information on using the ListProtectedResourcesByBackupVault +// See ListCopyJobs for more information on using the ListCopyJobs // 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 ListProtectedResourcesByBackupVaultRequest method. -// req, resp := client.ListProtectedResourcesByBackupVaultRequest(params) +// // Example sending a request using the ListCopyJobsRequest method. +// req, resp := client.ListCopyJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesByBackupVault -func (c *Backup) ListProtectedResourcesByBackupVaultRequest(input *ListProtectedResourcesByBackupVaultInput) (req *request.Request, output *ListProtectedResourcesByBackupVaultOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs +func (c *Backup) ListCopyJobsRequest(input *ListCopyJobsInput) (req *request.Request, output *ListCopyJobsOutput) { op := &request.Operation{ - Name: opListProtectedResourcesByBackupVault, + Name: opListCopyJobs, HTTPMethod: "GET", - HTTPPath: "/backup-vaults/{backupVaultName}/resources/", + HTTPPath: "/copy-jobs/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5489,24 +5661,24 @@ func (c *Backup) ListProtectedResourcesByBackupVaultRequest(input *ListProtected } if input == nil { - input = &ListProtectedResourcesByBackupVaultInput{} + input = &ListCopyJobsInput{} } - output = &ListProtectedResourcesByBackupVaultOutput{} + output = &ListCopyJobsOutput{} req = c.newRequest(op, input, output) return } -// ListProtectedResourcesByBackupVault API operation for AWS Backup. +// ListCopyJobs API operation for AWS Backup. // -// This request lists the protected resources corresponding to each backup vault. +// Returns metadata about your copy jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListProtectedResourcesByBackupVault for usage and error information. +// API operation ListCopyJobs for usage and error information. // // Returned Error Types: // @@ -5514,70 +5686,67 @@ func (c *Backup) ListProtectedResourcesByBackupVaultRequest(input *ListProtected // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesByBackupVault -func (c *Backup) ListProtectedResourcesByBackupVault(input *ListProtectedResourcesByBackupVaultInput) (*ListProtectedResourcesByBackupVaultOutput, error) { - req, out := c.ListProtectedResourcesByBackupVaultRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListCopyJobs +func (c *Backup) ListCopyJobs(input *ListCopyJobsInput) (*ListCopyJobsOutput, error) { + req, out := c.ListCopyJobsRequest(input) return out, req.Send() } -// ListProtectedResourcesByBackupVaultWithContext is the same as ListProtectedResourcesByBackupVault with the addition of +// ListCopyJobsWithContext is the same as ListCopyJobs with the addition of // the ability to pass a context and additional request options. // -// See ListProtectedResourcesByBackupVault for details on how to use this API operation. +// See ListCopyJobs 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 *Backup) ListProtectedResourcesByBackupVaultWithContext(ctx aws.Context, input *ListProtectedResourcesByBackupVaultInput, opts ...request.Option) (*ListProtectedResourcesByBackupVaultOutput, error) { - req, out := c.ListProtectedResourcesByBackupVaultRequest(input) +func (c *Backup) ListCopyJobsWithContext(ctx aws.Context, input *ListCopyJobsInput, opts ...request.Option) (*ListCopyJobsOutput, error) { + req, out := c.ListCopyJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListProtectedResourcesByBackupVaultPages iterates over the pages of a ListProtectedResourcesByBackupVault operation, +// ListCopyJobsPages iterates over the pages of a ListCopyJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListProtectedResourcesByBackupVault method for more information on how to use this operation. +// See ListCopyJobs 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 ListProtectedResourcesByBackupVault operation. +// // Example iterating over at most 3 pages of a ListCopyJobs operation. // pageNum := 0 -// err := client.ListProtectedResourcesByBackupVaultPages(params, -// func(page *backup.ListProtectedResourcesByBackupVaultOutput, lastPage bool) bool { +// err := client.ListCopyJobsPages(params, +// func(page *backup.ListCopyJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListProtectedResourcesByBackupVaultPages(input *ListProtectedResourcesByBackupVaultInput, fn func(*ListProtectedResourcesByBackupVaultOutput, bool) bool) error { - return c.ListProtectedResourcesByBackupVaultPagesWithContext(aws.BackgroundContext(), input, fn) -} +func (c *Backup) ListCopyJobsPages(input *ListCopyJobsInput, fn func(*ListCopyJobsOutput, bool) bool) error { + return c.ListCopyJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// ListProtectedResourcesByBackupVaultPagesWithContext same as ListProtectedResourcesByBackupVaultPages except +// ListCopyJobsPagesWithContext same as ListCopyJobsPages 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 *Backup) ListProtectedResourcesByBackupVaultPagesWithContext(ctx aws.Context, input *ListProtectedResourcesByBackupVaultInput, fn func(*ListProtectedResourcesByBackupVaultOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListCopyJobsPagesWithContext(ctx aws.Context, input *ListCopyJobsInput, fn func(*ListCopyJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListProtectedResourcesByBackupVaultInput + var inCpy *ListCopyJobsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListProtectedResourcesByBackupVaultRequest(inCpy) + req, _ := c.ListCopyJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5585,7 +5754,7 @@ func (c *Backup) ListProtectedResourcesByBackupVaultPagesWithContext(ctx aws.Con } for p.Next() { - if !fn(p.Page().(*ListProtectedResourcesByBackupVaultOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListCopyJobsOutput), !p.HasNextPage()) { break } } @@ -5593,36 +5762,36 @@ func (c *Backup) ListProtectedResourcesByBackupVaultPagesWithContext(ctx aws.Con return p.Err() } -const opListRecoveryPointsByBackupVault = "ListRecoveryPointsByBackupVault" +const opListFrameworks = "ListFrameworks" -// ListRecoveryPointsByBackupVaultRequest generates a "aws/request.Request" representing the -// client's request for the ListRecoveryPointsByBackupVault operation. The "output" return +// ListFrameworksRequest generates a "aws/request.Request" representing the +// client's request for the ListFrameworks 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 ListRecoveryPointsByBackupVault for more information on using the ListRecoveryPointsByBackupVault +// See ListFrameworks for more information on using the ListFrameworks // 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 ListRecoveryPointsByBackupVaultRequest method. -// req, resp := client.ListRecoveryPointsByBackupVaultRequest(params) +// // Example sending a request using the ListFrameworksRequest method. +// req, resp := client.ListFrameworksRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault -func (c *Backup) ListRecoveryPointsByBackupVaultRequest(input *ListRecoveryPointsByBackupVaultInput) (req *request.Request, output *ListRecoveryPointsByBackupVaultOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworks +func (c *Backup) ListFrameworksRequest(input *ListFrameworksInput) (req *request.Request, output *ListFrameworksOutput) { op := &request.Operation{ - Name: opListRecoveryPointsByBackupVault, + Name: opListFrameworks, HTTPMethod: "GET", - HTTPPath: "/backup-vaults/{backupVaultName}/recovery-points/", + HTTPPath: "/audit/frameworks", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5632,99 +5801,93 @@ func (c *Backup) ListRecoveryPointsByBackupVaultRequest(input *ListRecoveryPoint } if input == nil { - input = &ListRecoveryPointsByBackupVaultInput{} + input = &ListFrameworksInput{} } - output = &ListRecoveryPointsByBackupVaultOutput{} + output = &ListFrameworksOutput{} req = c.newRequest(op, input, output) return } -// ListRecoveryPointsByBackupVault API operation for AWS Backup. +// ListFrameworks API operation for AWS Backup. // -// Returns detailed information about the recovery points stored in a backup -// vault. +// Returns a list of all frameworks for an Amazon Web Services account and Amazon +// Web Services Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListRecoveryPointsByBackupVault for usage and error information. +// API operation ListFrameworks for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault -func (c *Backup) ListRecoveryPointsByBackupVault(input *ListRecoveryPointsByBackupVaultInput) (*ListRecoveryPointsByBackupVaultOutput, error) { - req, out := c.ListRecoveryPointsByBackupVaultRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListFrameworks +func (c *Backup) ListFrameworks(input *ListFrameworksInput) (*ListFrameworksOutput, error) { + req, out := c.ListFrameworksRequest(input) return out, req.Send() } -// ListRecoveryPointsByBackupVaultWithContext is the same as ListRecoveryPointsByBackupVault with the addition of +// ListFrameworksWithContext is the same as ListFrameworks with the addition of // the ability to pass a context and additional request options. // -// See ListRecoveryPointsByBackupVault for details on how to use this API operation. +// See ListFrameworks 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 *Backup) ListRecoveryPointsByBackupVaultWithContext(ctx aws.Context, input *ListRecoveryPointsByBackupVaultInput, opts ...request.Option) (*ListRecoveryPointsByBackupVaultOutput, error) { - req, out := c.ListRecoveryPointsByBackupVaultRequest(input) +func (c *Backup) ListFrameworksWithContext(ctx aws.Context, input *ListFrameworksInput, opts ...request.Option) (*ListFrameworksOutput, error) { + req, out := c.ListFrameworksRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRecoveryPointsByBackupVaultPages iterates over the pages of a ListRecoveryPointsByBackupVault operation, +// ListFrameworksPages iterates over the pages of a ListFrameworks operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListRecoveryPointsByBackupVault method for more information on how to use this operation. +// See ListFrameworks 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 ListRecoveryPointsByBackupVault operation. +// // Example iterating over at most 3 pages of a ListFrameworks operation. // pageNum := 0 -// err := client.ListRecoveryPointsByBackupVaultPages(params, -// func(page *backup.ListRecoveryPointsByBackupVaultOutput, lastPage bool) bool { +// err := client.ListFrameworksPages(params, +// func(page *backup.ListFrameworksOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListRecoveryPointsByBackupVaultPages(input *ListRecoveryPointsByBackupVaultInput, fn func(*ListRecoveryPointsByBackupVaultOutput, bool) bool) error { - return c.ListRecoveryPointsByBackupVaultPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListFrameworksPages(input *ListFrameworksInput, fn func(*ListFrameworksOutput, bool) bool) error { + return c.ListFrameworksPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListRecoveryPointsByBackupVaultPagesWithContext same as ListRecoveryPointsByBackupVaultPages except +// ListFrameworksPagesWithContext same as ListFrameworksPages 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 *Backup) ListRecoveryPointsByBackupVaultPagesWithContext(ctx aws.Context, input *ListRecoveryPointsByBackupVaultInput, fn func(*ListRecoveryPointsByBackupVaultOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListFrameworksPagesWithContext(ctx aws.Context, input *ListFrameworksInput, fn func(*ListFrameworksOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListRecoveryPointsByBackupVaultInput + var inCpy *ListFrameworksInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListRecoveryPointsByBackupVaultRequest(inCpy) + req, _ := c.ListFrameworksRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5732,7 +5895,7 @@ func (c *Backup) ListRecoveryPointsByBackupVaultPagesWithContext(ctx aws.Context } for p.Next() { - if !fn(p.Page().(*ListRecoveryPointsByBackupVaultOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListFrameworksOutput), !p.HasNextPage()) { break } } @@ -5740,36 +5903,36 @@ func (c *Backup) ListRecoveryPointsByBackupVaultPagesWithContext(ctx aws.Context return p.Err() } -const opListRecoveryPointsByLegalHold = "ListRecoveryPointsByLegalHold" +const opListLegalHolds = "ListLegalHolds" -// ListRecoveryPointsByLegalHoldRequest generates a "aws/request.Request" representing the -// client's request for the ListRecoveryPointsByLegalHold operation. The "output" return +// ListLegalHoldsRequest generates a "aws/request.Request" representing the +// client's request for the ListLegalHolds 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 ListRecoveryPointsByLegalHold for more information on using the ListRecoveryPointsByLegalHold +// See ListLegalHolds for more information on using the ListLegalHolds // 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 ListRecoveryPointsByLegalHoldRequest method. -// req, resp := client.ListRecoveryPointsByLegalHoldRequest(params) +// // Example sending a request using the ListLegalHoldsRequest method. +// req, resp := client.ListLegalHoldsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByLegalHold -func (c *Backup) ListRecoveryPointsByLegalHoldRequest(input *ListRecoveryPointsByLegalHoldInput) (req *request.Request, output *ListRecoveryPointsByLegalHoldOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListLegalHolds +func (c *Backup) ListLegalHoldsRequest(input *ListLegalHoldsInput) (req *request.Request, output *ListLegalHoldsOutput) { op := &request.Operation{ - Name: opListRecoveryPointsByLegalHold, + Name: opListLegalHolds, HTTPMethod: "GET", - HTTPPath: "/legal-holds/{legalHoldId}/recovery-points", + HTTPPath: "/legal-holds/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5779,25 +5942,24 @@ func (c *Backup) ListRecoveryPointsByLegalHoldRequest(input *ListRecoveryPointsB } if input == nil { - input = &ListRecoveryPointsByLegalHoldInput{} + input = &ListLegalHoldsInput{} } - output = &ListRecoveryPointsByLegalHoldOutput{} + output = &ListLegalHoldsOutput{} req = c.newRequest(op, input, output) return } -// ListRecoveryPointsByLegalHold API operation for AWS Backup. +// ListLegalHolds API operation for AWS Backup. // -// This action returns recovery point ARNs (Amazon Resource Names) of the specified -// legal hold. +// This action returns metadata about active and previous legal holds. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListRecoveryPointsByLegalHold for usage and error information. +// API operation ListLegalHolds for usage and error information. // // Returned Error Types: // @@ -5805,70 +5967,67 @@ func (c *Backup) ListRecoveryPointsByLegalHoldRequest(input *ListRecoveryPointsB // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByLegalHold -func (c *Backup) ListRecoveryPointsByLegalHold(input *ListRecoveryPointsByLegalHoldInput) (*ListRecoveryPointsByLegalHoldOutput, error) { - req, out := c.ListRecoveryPointsByLegalHoldRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListLegalHolds +func (c *Backup) ListLegalHolds(input *ListLegalHoldsInput) (*ListLegalHoldsOutput, error) { + req, out := c.ListLegalHoldsRequest(input) return out, req.Send() } -// ListRecoveryPointsByLegalHoldWithContext is the same as ListRecoveryPointsByLegalHold with the addition of +// ListLegalHoldsWithContext is the same as ListLegalHolds with the addition of // the ability to pass a context and additional request options. // -// See ListRecoveryPointsByLegalHold for details on how to use this API operation. +// See ListLegalHolds 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 *Backup) ListRecoveryPointsByLegalHoldWithContext(ctx aws.Context, input *ListRecoveryPointsByLegalHoldInput, opts ...request.Option) (*ListRecoveryPointsByLegalHoldOutput, error) { - req, out := c.ListRecoveryPointsByLegalHoldRequest(input) +func (c *Backup) ListLegalHoldsWithContext(ctx aws.Context, input *ListLegalHoldsInput, opts ...request.Option) (*ListLegalHoldsOutput, error) { + req, out := c.ListLegalHoldsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRecoveryPointsByLegalHoldPages iterates over the pages of a ListRecoveryPointsByLegalHold operation, +// ListLegalHoldsPages iterates over the pages of a ListLegalHolds operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListRecoveryPointsByLegalHold method for more information on how to use this operation. +// See ListLegalHolds 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 ListRecoveryPointsByLegalHold operation. +// // Example iterating over at most 3 pages of a ListLegalHolds operation. // pageNum := 0 -// err := client.ListRecoveryPointsByLegalHoldPages(params, -// func(page *backup.ListRecoveryPointsByLegalHoldOutput, lastPage bool) bool { +// err := client.ListLegalHoldsPages(params, +// func(page *backup.ListLegalHoldsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListRecoveryPointsByLegalHoldPages(input *ListRecoveryPointsByLegalHoldInput, fn func(*ListRecoveryPointsByLegalHoldOutput, bool) bool) error { - return c.ListRecoveryPointsByLegalHoldPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListLegalHoldsPages(input *ListLegalHoldsInput, fn func(*ListLegalHoldsOutput, bool) bool) error { + return c.ListLegalHoldsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListRecoveryPointsByLegalHoldPagesWithContext same as ListRecoveryPointsByLegalHoldPages except +// ListLegalHoldsPagesWithContext same as ListLegalHoldsPages 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 *Backup) ListRecoveryPointsByLegalHoldPagesWithContext(ctx aws.Context, input *ListRecoveryPointsByLegalHoldInput, fn func(*ListRecoveryPointsByLegalHoldOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListLegalHoldsPagesWithContext(ctx aws.Context, input *ListLegalHoldsInput, fn func(*ListLegalHoldsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListRecoveryPointsByLegalHoldInput + var inCpy *ListLegalHoldsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListRecoveryPointsByLegalHoldRequest(inCpy) + req, _ := c.ListLegalHoldsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5876,7 +6035,7 @@ func (c *Backup) ListRecoveryPointsByLegalHoldPagesWithContext(ctx aws.Context, } for p.Next() { - if !fn(p.Page().(*ListRecoveryPointsByLegalHoldOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListLegalHoldsOutput), !p.HasNextPage()) { break } } @@ -5884,36 +6043,36 @@ func (c *Backup) ListRecoveryPointsByLegalHoldPagesWithContext(ctx aws.Context, return p.Err() } -const opListRecoveryPointsByResource = "ListRecoveryPointsByResource" +const opListProtectedResources = "ListProtectedResources" -// ListRecoveryPointsByResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListRecoveryPointsByResource operation. The "output" return +// ListProtectedResourcesRequest generates a "aws/request.Request" representing the +// client's request for the ListProtectedResources 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 ListRecoveryPointsByResource for more information on using the ListRecoveryPointsByResource +// See ListProtectedResources for more information on using the ListProtectedResources // 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 ListRecoveryPointsByResourceRequest method. -// req, resp := client.ListRecoveryPointsByResourceRequest(params) +// // Example sending a request using the ListProtectedResourcesRequest method. +// req, resp := client.ListProtectedResourcesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource -func (c *Backup) ListRecoveryPointsByResourceRequest(input *ListRecoveryPointsByResourceInput) (req *request.Request, output *ListRecoveryPointsByResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResources +func (c *Backup) ListProtectedResourcesRequest(input *ListProtectedResourcesInput) (req *request.Request, output *ListProtectedResourcesOutput) { op := &request.Operation{ - Name: opListRecoveryPointsByResource, + Name: opListProtectedResources, HTTPMethod: "GET", - HTTPPath: "/resources/{resourceArn}/recovery-points/", + HTTPPath: "/resources/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -5923,102 +6082,94 @@ func (c *Backup) ListRecoveryPointsByResourceRequest(input *ListRecoveryPointsBy } if input == nil { - input = &ListRecoveryPointsByResourceInput{} + input = &ListProtectedResourcesInput{} } - output = &ListRecoveryPointsByResourceOutput{} + output = &ListProtectedResourcesOutput{} req = c.newRequest(op, input, output) return } -// ListRecoveryPointsByResource API operation for AWS Backup. -// -// Returns detailed information about all the recovery points of the type specified -// by a resource Amazon Resource Name (ARN). +// ListProtectedResources API operation for AWS Backup. // -// For Amazon EFS and Amazon EC2, this action only lists recovery points created -// by Backup. +// Returns an array of resources successfully backed up by Backup, including +// the time the resource was saved, an Amazon Resource Name (ARN) of the resource, +// and a resource type. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListRecoveryPointsByResource for usage and error information. +// API operation ListProtectedResources for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource -func (c *Backup) ListRecoveryPointsByResource(input *ListRecoveryPointsByResourceInput) (*ListRecoveryPointsByResourceOutput, error) { - req, out := c.ListRecoveryPointsByResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResources +func (c *Backup) ListProtectedResources(input *ListProtectedResourcesInput) (*ListProtectedResourcesOutput, error) { + req, out := c.ListProtectedResourcesRequest(input) return out, req.Send() } -// ListRecoveryPointsByResourceWithContext is the same as ListRecoveryPointsByResource with the addition of +// ListProtectedResourcesWithContext is the same as ListProtectedResources with the addition of // the ability to pass a context and additional request options. // -// See ListRecoveryPointsByResource for details on how to use this API operation. +// See ListProtectedResources 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 *Backup) ListRecoveryPointsByResourceWithContext(ctx aws.Context, input *ListRecoveryPointsByResourceInput, opts ...request.Option) (*ListRecoveryPointsByResourceOutput, error) { - req, out := c.ListRecoveryPointsByResourceRequest(input) +func (c *Backup) ListProtectedResourcesWithContext(ctx aws.Context, input *ListProtectedResourcesInput, opts ...request.Option) (*ListProtectedResourcesOutput, error) { + req, out := c.ListProtectedResourcesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRecoveryPointsByResourcePages iterates over the pages of a ListRecoveryPointsByResource operation, +// ListProtectedResourcesPages iterates over the pages of a ListProtectedResources operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListRecoveryPointsByResource method for more information on how to use this operation. +// See ListProtectedResources 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 ListRecoveryPointsByResource operation. +// // Example iterating over at most 3 pages of a ListProtectedResources operation. // pageNum := 0 -// err := client.ListRecoveryPointsByResourcePages(params, -// func(page *backup.ListRecoveryPointsByResourceOutput, lastPage bool) bool { +// err := client.ListProtectedResourcesPages(params, +// func(page *backup.ListProtectedResourcesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListRecoveryPointsByResourcePages(input *ListRecoveryPointsByResourceInput, fn func(*ListRecoveryPointsByResourceOutput, bool) bool) error { - return c.ListRecoveryPointsByResourcePagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListProtectedResourcesPages(input *ListProtectedResourcesInput, fn func(*ListProtectedResourcesOutput, bool) bool) error { + return c.ListProtectedResourcesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListRecoveryPointsByResourcePagesWithContext same as ListRecoveryPointsByResourcePages except +// ListProtectedResourcesPagesWithContext same as ListProtectedResourcesPages 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 *Backup) ListRecoveryPointsByResourcePagesWithContext(ctx aws.Context, input *ListRecoveryPointsByResourceInput, fn func(*ListRecoveryPointsByResourceOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListProtectedResourcesPagesWithContext(ctx aws.Context, input *ListProtectedResourcesInput, fn func(*ListProtectedResourcesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListRecoveryPointsByResourceInput + var inCpy *ListProtectedResourcesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListRecoveryPointsByResourceRequest(inCpy) + req, _ := c.ListProtectedResourcesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6026,7 +6177,7 @@ func (c *Backup) ListRecoveryPointsByResourcePagesWithContext(ctx aws.Context, i } for p.Next() { - if !fn(p.Page().(*ListRecoveryPointsByResourceOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListProtectedResourcesOutput), !p.HasNextPage()) { break } } @@ -6034,36 +6185,36 @@ func (c *Backup) ListRecoveryPointsByResourcePagesWithContext(ctx aws.Context, i return p.Err() } -const opListReportJobs = "ListReportJobs" +const opListProtectedResourcesByBackupVault = "ListProtectedResourcesByBackupVault" -// ListReportJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListReportJobs operation. The "output" return +// ListProtectedResourcesByBackupVaultRequest generates a "aws/request.Request" representing the +// client's request for the ListProtectedResourcesByBackupVault 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 ListReportJobs for more information on using the ListReportJobs +// See ListProtectedResourcesByBackupVault for more information on using the ListProtectedResourcesByBackupVault // 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 ListReportJobsRequest method. -// req, resp := client.ListReportJobsRequest(params) +// // Example sending a request using the ListProtectedResourcesByBackupVaultRequest method. +// req, resp := client.ListProtectedResourcesByBackupVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobs -func (c *Backup) ListReportJobsRequest(input *ListReportJobsInput) (req *request.Request, output *ListReportJobsOutput) { - op := &request.Operation{ - Name: opListReportJobs, +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesByBackupVault +func (c *Backup) ListProtectedResourcesByBackupVaultRequest(input *ListProtectedResourcesByBackupVaultInput) (req *request.Request, output *ListProtectedResourcesByBackupVaultOutput) { + op := &request.Operation{ + Name: opListProtectedResourcesByBackupVault, HTTPMethod: "GET", - HTTPPath: "/audit/report-jobs", + HTTPPath: "/backup-vaults/{backupVaultName}/resources/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -6073,24 +6224,24 @@ func (c *Backup) ListReportJobsRequest(input *ListReportJobsInput) (req *request } if input == nil { - input = &ListReportJobsInput{} + input = &ListProtectedResourcesByBackupVaultInput{} } - output = &ListReportJobsOutput{} + output = &ListProtectedResourcesByBackupVaultOutput{} req = c.newRequest(op, input, output) return } -// ListReportJobs API operation for AWS Backup. +// ListProtectedResourcesByBackupVault API operation for AWS Backup. // -// Returns details about your report jobs. +// This request lists the protected resources corresponding to each backup vault. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListReportJobs for usage and error information. +// API operation ListProtectedResourcesByBackupVault for usage and error information. // // Returned Error Types: // @@ -6098,70 +6249,70 @@ func (c *Backup) ListReportJobsRequest(input *ListReportJobsInput) (req *request // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - ServiceUnavailableException -// The request failed due to a temporary failure of the server. -// // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobs -func (c *Backup) ListReportJobs(input *ListReportJobsInput) (*ListReportJobsOutput, error) { - req, out := c.ListReportJobsRequest(input) +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListProtectedResourcesByBackupVault +func (c *Backup) ListProtectedResourcesByBackupVault(input *ListProtectedResourcesByBackupVaultInput) (*ListProtectedResourcesByBackupVaultOutput, error) { + req, out := c.ListProtectedResourcesByBackupVaultRequest(input) return out, req.Send() } -// ListReportJobsWithContext is the same as ListReportJobs with the addition of +// ListProtectedResourcesByBackupVaultWithContext is the same as ListProtectedResourcesByBackupVault with the addition of // the ability to pass a context and additional request options. // -// See ListReportJobs for details on how to use this API operation. +// See ListProtectedResourcesByBackupVault 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 *Backup) ListReportJobsWithContext(ctx aws.Context, input *ListReportJobsInput, opts ...request.Option) (*ListReportJobsOutput, error) { - req, out := c.ListReportJobsRequest(input) +func (c *Backup) ListProtectedResourcesByBackupVaultWithContext(ctx aws.Context, input *ListProtectedResourcesByBackupVaultInput, opts ...request.Option) (*ListProtectedResourcesByBackupVaultOutput, error) { + req, out := c.ListProtectedResourcesByBackupVaultRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListReportJobsPages iterates over the pages of a ListReportJobs operation, +// ListProtectedResourcesByBackupVaultPages iterates over the pages of a ListProtectedResourcesByBackupVault operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListReportJobs method for more information on how to use this operation. +// See ListProtectedResourcesByBackupVault 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 ListReportJobs operation. +// // Example iterating over at most 3 pages of a ListProtectedResourcesByBackupVault operation. // pageNum := 0 -// err := client.ListReportJobsPages(params, -// func(page *backup.ListReportJobsOutput, lastPage bool) bool { +// err := client.ListProtectedResourcesByBackupVaultPages(params, +// func(page *backup.ListProtectedResourcesByBackupVaultOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListReportJobsPages(input *ListReportJobsInput, fn func(*ListReportJobsOutput, bool) bool) error { - return c.ListReportJobsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListProtectedResourcesByBackupVaultPages(input *ListProtectedResourcesByBackupVaultInput, fn func(*ListProtectedResourcesByBackupVaultOutput, bool) bool) error { + return c.ListProtectedResourcesByBackupVaultPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListReportJobsPagesWithContext same as ListReportJobsPages except +// ListProtectedResourcesByBackupVaultPagesWithContext same as ListProtectedResourcesByBackupVaultPages 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 *Backup) ListReportJobsPagesWithContext(ctx aws.Context, input *ListReportJobsInput, fn func(*ListReportJobsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListProtectedResourcesByBackupVaultPagesWithContext(ctx aws.Context, input *ListProtectedResourcesByBackupVaultInput, fn func(*ListProtectedResourcesByBackupVaultOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListReportJobsInput + var inCpy *ListProtectedResourcesByBackupVaultInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListReportJobsRequest(inCpy) + req, _ := c.ListProtectedResourcesByBackupVaultRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6169,7 +6320,7 @@ func (c *Backup) ListReportJobsPagesWithContext(ctx aws.Context, input *ListRepo } for p.Next() { - if !fn(p.Page().(*ListReportJobsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListProtectedResourcesByBackupVaultOutput), !p.HasNextPage()) { break } } @@ -6177,36 +6328,36 @@ func (c *Backup) ListReportJobsPagesWithContext(ctx aws.Context, input *ListRepo return p.Err() } -const opListReportPlans = "ListReportPlans" +const opListRecoveryPointsByBackupVault = "ListRecoveryPointsByBackupVault" -// ListReportPlansRequest generates a "aws/request.Request" representing the -// client's request for the ListReportPlans operation. The "output" return +// ListRecoveryPointsByBackupVaultRequest generates a "aws/request.Request" representing the +// client's request for the ListRecoveryPointsByBackupVault 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 ListReportPlans for more information on using the ListReportPlans +// See ListRecoveryPointsByBackupVault for more information on using the ListRecoveryPointsByBackupVault // 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 ListReportPlansRequest method. -// req, resp := client.ListReportPlansRequest(params) +// // Example sending a request using the ListRecoveryPointsByBackupVaultRequest method. +// req, resp := client.ListRecoveryPointsByBackupVaultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlans -func (c *Backup) ListReportPlansRequest(input *ListReportPlansInput) (req *request.Request, output *ListReportPlansOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault +func (c *Backup) ListRecoveryPointsByBackupVaultRequest(input *ListRecoveryPointsByBackupVaultInput) (req *request.Request, output *ListRecoveryPointsByBackupVaultOutput) { op := &request.Operation{ - Name: opListReportPlans, + Name: opListRecoveryPointsByBackupVault, HTTPMethod: "GET", - HTTPPath: "/audit/report-plans", + HTTPPath: "/backup-vaults/{backupVaultName}/recovery-points/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -6216,93 +6367,99 @@ func (c *Backup) ListReportPlansRequest(input *ListReportPlansInput) (req *reque } if input == nil { - input = &ListReportPlansInput{} + input = &ListRecoveryPointsByBackupVaultInput{} } - output = &ListReportPlansOutput{} + output = &ListRecoveryPointsByBackupVaultOutput{} req = c.newRequest(op, input, output) return } -// ListReportPlans API operation for AWS Backup. +// ListRecoveryPointsByBackupVault API operation for AWS Backup. // -// Returns a list of your report plans. For detailed information about a single -// report plan, use DescribeReportPlan. +// Returns detailed information about the recovery points stored in a backup +// vault. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListReportPlans for usage and error information. +// API operation ListRecoveryPointsByBackupVault for usage and error information. // // Returned Error Types: // +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlans -func (c *Backup) ListReportPlans(input *ListReportPlansInput) (*ListReportPlansOutput, error) { - req, out := c.ListReportPlansRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByBackupVault +func (c *Backup) ListRecoveryPointsByBackupVault(input *ListRecoveryPointsByBackupVaultInput) (*ListRecoveryPointsByBackupVaultOutput, error) { + req, out := c.ListRecoveryPointsByBackupVaultRequest(input) return out, req.Send() } -// ListReportPlansWithContext is the same as ListReportPlans with the addition of +// ListRecoveryPointsByBackupVaultWithContext is the same as ListRecoveryPointsByBackupVault with the addition of // the ability to pass a context and additional request options. // -// See ListReportPlans for details on how to use this API operation. +// See ListRecoveryPointsByBackupVault 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 *Backup) ListReportPlansWithContext(ctx aws.Context, input *ListReportPlansInput, opts ...request.Option) (*ListReportPlansOutput, error) { - req, out := c.ListReportPlansRequest(input) +func (c *Backup) ListRecoveryPointsByBackupVaultWithContext(ctx aws.Context, input *ListRecoveryPointsByBackupVaultInput, opts ...request.Option) (*ListRecoveryPointsByBackupVaultOutput, error) { + req, out := c.ListRecoveryPointsByBackupVaultRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListReportPlansPages iterates over the pages of a ListReportPlans operation, +// ListRecoveryPointsByBackupVaultPages iterates over the pages of a ListRecoveryPointsByBackupVault operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListReportPlans method for more information on how to use this operation. +// See ListRecoveryPointsByBackupVault 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 ListReportPlans operation. +// // Example iterating over at most 3 pages of a ListRecoveryPointsByBackupVault operation. // pageNum := 0 -// err := client.ListReportPlansPages(params, -// func(page *backup.ListReportPlansOutput, lastPage bool) bool { +// err := client.ListRecoveryPointsByBackupVaultPages(params, +// func(page *backup.ListRecoveryPointsByBackupVaultOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListReportPlansPages(input *ListReportPlansInput, fn func(*ListReportPlansOutput, bool) bool) error { - return c.ListReportPlansPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListRecoveryPointsByBackupVaultPages(input *ListRecoveryPointsByBackupVaultInput, fn func(*ListRecoveryPointsByBackupVaultOutput, bool) bool) error { + return c.ListRecoveryPointsByBackupVaultPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListReportPlansPagesWithContext same as ListReportPlansPages except +// ListRecoveryPointsByBackupVaultPagesWithContext same as ListRecoveryPointsByBackupVaultPages 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 *Backup) ListReportPlansPagesWithContext(ctx aws.Context, input *ListReportPlansInput, fn func(*ListReportPlansOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListRecoveryPointsByBackupVaultPagesWithContext(ctx aws.Context, input *ListRecoveryPointsByBackupVaultInput, fn func(*ListRecoveryPointsByBackupVaultOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListReportPlansInput + var inCpy *ListRecoveryPointsByBackupVaultInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListReportPlansRequest(inCpy) + req, _ := c.ListRecoveryPointsByBackupVaultRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6310,7 +6467,7 @@ func (c *Backup) ListReportPlansPagesWithContext(ctx aws.Context, input *ListRep } for p.Next() { - if !fn(p.Page().(*ListReportPlansOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListRecoveryPointsByBackupVaultOutput), !p.HasNextPage()) { break } } @@ -6318,36 +6475,36 @@ func (c *Backup) ListReportPlansPagesWithContext(ctx aws.Context, input *ListRep return p.Err() } -const opListRestoreJobSummaries = "ListRestoreJobSummaries" +const opListRecoveryPointsByLegalHold = "ListRecoveryPointsByLegalHold" -// ListRestoreJobSummariesRequest generates a "aws/request.Request" representing the -// client's request for the ListRestoreJobSummaries operation. The "output" return +// ListRecoveryPointsByLegalHoldRequest generates a "aws/request.Request" representing the +// client's request for the ListRecoveryPointsByLegalHold 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 ListRestoreJobSummaries for more information on using the ListRestoreJobSummaries +// See ListRecoveryPointsByLegalHold for more information on using the ListRecoveryPointsByLegalHold // 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 ListRestoreJobSummariesRequest method. -// req, resp := client.ListRestoreJobSummariesRequest(params) +// // Example sending a request using the ListRecoveryPointsByLegalHoldRequest method. +// req, resp := client.ListRecoveryPointsByLegalHoldRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries -func (c *Backup) ListRestoreJobSummariesRequest(input *ListRestoreJobSummariesInput) (req *request.Request, output *ListRestoreJobSummariesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByLegalHold +func (c *Backup) ListRecoveryPointsByLegalHoldRequest(input *ListRecoveryPointsByLegalHoldInput) (req *request.Request, output *ListRecoveryPointsByLegalHoldOutput) { op := &request.Operation{ - Name: opListRestoreJobSummaries, + Name: opListRecoveryPointsByLegalHold, HTTPMethod: "GET", - HTTPPath: "/audit/restore-job-summaries", + HTTPPath: "/legal-holds/{legalHoldId}/recovery-points", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -6357,29 +6514,25 @@ func (c *Backup) ListRestoreJobSummariesRequest(input *ListRestoreJobSummariesIn } if input == nil { - input = &ListRestoreJobSummariesInput{} + input = &ListRecoveryPointsByLegalHoldInput{} } - output = &ListRestoreJobSummariesOutput{} + output = &ListRecoveryPointsByLegalHoldOutput{} req = c.newRequest(op, input, output) return } -// ListRestoreJobSummaries API operation for AWS Backup. -// -// This request obtains a summary of restore jobs created or running within -// the the most recent 30 days. You can include parameters AccountID, State, -// ResourceType, AggregationPeriod, MaxResults, or NextToken to filter results. +// ListRecoveryPointsByLegalHold API operation for AWS Backup. // -// This request returns a summary that contains Region, Account, State, RestourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. +// This action returns recovery point ARNs (Amazon Resource Names) of the specified +// legal hold. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListRestoreJobSummaries for usage and error information. +// API operation ListRecoveryPointsByLegalHold for usage and error information. // // Returned Error Types: // @@ -6387,67 +6540,70 @@ func (c *Backup) ListRestoreJobSummariesRequest(input *ListRestoreJobSummariesIn // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries -func (c *Backup) ListRestoreJobSummaries(input *ListRestoreJobSummariesInput) (*ListRestoreJobSummariesOutput, error) { - req, out := c.ListRestoreJobSummariesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByLegalHold +func (c *Backup) ListRecoveryPointsByLegalHold(input *ListRecoveryPointsByLegalHoldInput) (*ListRecoveryPointsByLegalHoldOutput, error) { + req, out := c.ListRecoveryPointsByLegalHoldRequest(input) return out, req.Send() } -// ListRestoreJobSummariesWithContext is the same as ListRestoreJobSummaries with the addition of +// ListRecoveryPointsByLegalHoldWithContext is the same as ListRecoveryPointsByLegalHold with the addition of // the ability to pass a context and additional request options. // -// See ListRestoreJobSummaries for details on how to use this API operation. +// See ListRecoveryPointsByLegalHold 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 *Backup) ListRestoreJobSummariesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, opts ...request.Option) (*ListRestoreJobSummariesOutput, error) { - req, out := c.ListRestoreJobSummariesRequest(input) +func (c *Backup) ListRecoveryPointsByLegalHoldWithContext(ctx aws.Context, input *ListRecoveryPointsByLegalHoldInput, opts ...request.Option) (*ListRecoveryPointsByLegalHoldOutput, error) { + req, out := c.ListRecoveryPointsByLegalHoldRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRestoreJobSummariesPages iterates over the pages of a ListRestoreJobSummaries operation, +// ListRecoveryPointsByLegalHoldPages iterates over the pages of a ListRecoveryPointsByLegalHold operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListRestoreJobSummaries method for more information on how to use this operation. +// See ListRecoveryPointsByLegalHold 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 ListRestoreJobSummaries operation. +// // Example iterating over at most 3 pages of a ListRecoveryPointsByLegalHold operation. // pageNum := 0 -// err := client.ListRestoreJobSummariesPages(params, -// func(page *backup.ListRestoreJobSummariesOutput, lastPage bool) bool { +// err := client.ListRecoveryPointsByLegalHoldPages(params, +// func(page *backup.ListRecoveryPointsByLegalHoldOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListRestoreJobSummariesPages(input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool) error { - return c.ListRestoreJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListRecoveryPointsByLegalHoldPages(input *ListRecoveryPointsByLegalHoldInput, fn func(*ListRecoveryPointsByLegalHoldOutput, bool) bool) error { + return c.ListRecoveryPointsByLegalHoldPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListRestoreJobSummariesPagesWithContext same as ListRestoreJobSummariesPages except +// ListRecoveryPointsByLegalHoldPagesWithContext same as ListRecoveryPointsByLegalHoldPages 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 *Backup) ListRestoreJobSummariesPagesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListRecoveryPointsByLegalHoldPagesWithContext(ctx aws.Context, input *ListRecoveryPointsByLegalHoldInput, fn func(*ListRecoveryPointsByLegalHoldOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListRestoreJobSummariesInput + var inCpy *ListRecoveryPointsByLegalHoldInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListRestoreJobSummariesRequest(inCpy) + req, _ := c.ListRecoveryPointsByLegalHoldRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6455,7 +6611,7 @@ func (c *Backup) ListRestoreJobSummariesPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListRestoreJobSummariesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListRecoveryPointsByLegalHoldOutput), !p.HasNextPage()) { break } } @@ -6463,36 +6619,36 @@ func (c *Backup) ListRestoreJobSummariesPagesWithContext(ctx aws.Context, input return p.Err() } -const opListRestoreJobs = "ListRestoreJobs" +const opListRecoveryPointsByResource = "ListRecoveryPointsByResource" -// ListRestoreJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListRestoreJobs operation. The "output" return +// ListRecoveryPointsByResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListRecoveryPointsByResource 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 ListRestoreJobs for more information on using the ListRestoreJobs +// See ListRecoveryPointsByResource for more information on using the ListRecoveryPointsByResource // 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 ListRestoreJobsRequest method. -// req, resp := client.ListRestoreJobsRequest(params) +// // Example sending a request using the ListRecoveryPointsByResourceRequest method. +// req, resp := client.ListRecoveryPointsByResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobs -func (c *Backup) ListRestoreJobsRequest(input *ListRestoreJobsInput) (req *request.Request, output *ListRestoreJobsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource +func (c *Backup) ListRecoveryPointsByResourceRequest(input *ListRecoveryPointsByResourceInput) (req *request.Request, output *ListRecoveryPointsByResourceOutput) { op := &request.Operation{ - Name: opListRestoreJobs, + Name: opListRecoveryPointsByResource, HTTPMethod: "GET", - HTTPPath: "/restore-jobs/", + HTTPPath: "/resources/{resourceArn}/recovery-points/", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -6502,25 +6658,28 @@ func (c *Backup) ListRestoreJobsRequest(input *ListRestoreJobsInput) (req *reque } if input == nil { - input = &ListRestoreJobsInput{} + input = &ListRecoveryPointsByResourceInput{} } - output = &ListRestoreJobsOutput{} + output = &ListRecoveryPointsByResourceOutput{} req = c.newRequest(op, input, output) return } -// ListRestoreJobs API operation for AWS Backup. +// ListRecoveryPointsByResource API operation for AWS Backup. // -// Returns a list of jobs that Backup initiated to restore a saved resource, -// including details about the recovery process. +// Returns detailed information about all the recovery points of the type specified +// by a resource Amazon Resource Name (ARN). +// +// For Amazon EFS and Amazon EC2, this action only lists recovery points created +// by Backup. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListRestoreJobs for usage and error information. +// API operation ListRecoveryPointsByResource for usage and error information. // // Returned Error Types: // @@ -6537,64 +6696,64 @@ func (c *Backup) ListRestoreJobsRequest(input *ListRestoreJobsInput) (req *reque // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobs -func (c *Backup) ListRestoreJobs(input *ListRestoreJobsInput) (*ListRestoreJobsOutput, error) { - req, out := c.ListRestoreJobsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRecoveryPointsByResource +func (c *Backup) ListRecoveryPointsByResource(input *ListRecoveryPointsByResourceInput) (*ListRecoveryPointsByResourceOutput, error) { + req, out := c.ListRecoveryPointsByResourceRequest(input) return out, req.Send() } -// ListRestoreJobsWithContext is the same as ListRestoreJobs with the addition of +// ListRecoveryPointsByResourceWithContext is the same as ListRecoveryPointsByResource with the addition of // the ability to pass a context and additional request options. // -// See ListRestoreJobs for details on how to use this API operation. +// See ListRecoveryPointsByResource 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 *Backup) ListRestoreJobsWithContext(ctx aws.Context, input *ListRestoreJobsInput, opts ...request.Option) (*ListRestoreJobsOutput, error) { - req, out := c.ListRestoreJobsRequest(input) +func (c *Backup) ListRecoveryPointsByResourceWithContext(ctx aws.Context, input *ListRecoveryPointsByResourceInput, opts ...request.Option) (*ListRecoveryPointsByResourceOutput, error) { + req, out := c.ListRecoveryPointsByResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRestoreJobsPages iterates over the pages of a ListRestoreJobs operation, +// ListRecoveryPointsByResourcePages iterates over the pages of a ListRecoveryPointsByResource operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListRestoreJobs method for more information on how to use this operation. +// See ListRecoveryPointsByResource 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 ListRestoreJobs operation. +// // Example iterating over at most 3 pages of a ListRecoveryPointsByResource operation. // pageNum := 0 -// err := client.ListRestoreJobsPages(params, -// func(page *backup.ListRestoreJobsOutput, lastPage bool) bool { +// err := client.ListRecoveryPointsByResourcePages(params, +// func(page *backup.ListRecoveryPointsByResourceOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListRestoreJobsPages(input *ListRestoreJobsInput, fn func(*ListRestoreJobsOutput, bool) bool) error { - return c.ListRestoreJobsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListRecoveryPointsByResourcePages(input *ListRecoveryPointsByResourceInput, fn func(*ListRecoveryPointsByResourceOutput, bool) bool) error { + return c.ListRecoveryPointsByResourcePagesWithContext(aws.BackgroundContext(), input, fn) } -// ListRestoreJobsPagesWithContext same as ListRestoreJobsPages except +// ListRecoveryPointsByResourcePagesWithContext same as ListRecoveryPointsByResourcePages 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 *Backup) ListRestoreJobsPagesWithContext(ctx aws.Context, input *ListRestoreJobsInput, fn func(*ListRestoreJobsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListRecoveryPointsByResourcePagesWithContext(ctx aws.Context, input *ListRecoveryPointsByResourceInput, fn func(*ListRecoveryPointsByResourceOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListRestoreJobsInput + var inCpy *ListRecoveryPointsByResourceInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListRestoreJobsRequest(inCpy) + req, _ := c.ListRecoveryPointsByResourceRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6602,7 +6761,7 @@ func (c *Backup) ListRestoreJobsPagesWithContext(ctx aws.Context, input *ListRes } for p.Next() { - if !fn(p.Page().(*ListRestoreJobsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListRecoveryPointsByResourceOutput), !p.HasNextPage()) { break } } @@ -6610,36 +6769,36 @@ func (c *Backup) ListRestoreJobsPagesWithContext(ctx aws.Context, input *ListRes return p.Err() } -const opListTags = "ListTags" +const opListReportJobs = "ListReportJobs" -// ListTagsRequest generates a "aws/request.Request" representing the -// client's request for the ListTags operation. The "output" return +// ListReportJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListReportJobs 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 ListTags for more information on using the ListTags +// See ListReportJobs for more information on using the ListReportJobs // 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 ListTagsRequest method. -// req, resp := client.ListTagsRequest(params) +// // Example sending a request using the ListReportJobsRequest method. +// req, resp := client.ListReportJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTags -func (c *Backup) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobs +func (c *Backup) ListReportJobsRequest(input *ListReportJobsInput) (req *request.Request, output *ListReportJobsOutput) { op := &request.Operation{ - Name: opListTags, + Name: opListReportJobs, HTTPMethod: "GET", - HTTPPath: "/tags/{resourceArn}/", + HTTPPath: "/audit/report-jobs", Paginator: &request.Paginator{ InputTokens: []string{"NextToken"}, OutputTokens: []string{"NextToken"}, @@ -6649,104 +6808,95 @@ func (c *Backup) ListTagsRequest(input *ListTagsInput) (req *request.Request, ou } if input == nil { - input = &ListTagsInput{} + input = &ListReportJobsInput{} } - output = &ListTagsOutput{} + output = &ListReportJobsOutput{} req = c.newRequest(op, input, output) return } -// ListTags API operation for AWS Backup. -// -// Returns a list of key-value pairs assigned to a target recovery point, backup -// plan, or backup vault. +// ListReportJobs API operation for AWS Backup. // -// ListTags only works for resource types that support full Backup management -// of their backups. Those resource types are listed in the "Full Backup management" -// section of the Feature availability by resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) -// table. +// Returns details about your report jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation ListTags for usage and error information. +// API operation ListReportJobs for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTags -func (c *Backup) ListTags(input *ListTagsInput) (*ListTagsOutput, error) { - req, out := c.ListTagsRequest(input) +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportJobs +func (c *Backup) ListReportJobs(input *ListReportJobsInput) (*ListReportJobsOutput, error) { + req, out := c.ListReportJobsRequest(input) return out, req.Send() } -// ListTagsWithContext is the same as ListTags with the addition of +// ListReportJobsWithContext is the same as ListReportJobs with the addition of // the ability to pass a context and additional request options. // -// See ListTags for details on how to use this API operation. +// See ListReportJobs 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 *Backup) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) { - req, out := c.ListTagsRequest(input) +func (c *Backup) ListReportJobsWithContext(ctx aws.Context, input *ListReportJobsInput, opts ...request.Option) (*ListReportJobsOutput, error) { + req, out := c.ListReportJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTagsPages iterates over the pages of a ListTags operation, +// ListReportJobsPages iterates over the pages of a ListReportJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTags method for more information on how to use this operation. +// See ListReportJobs 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 ListTags operation. +// // Example iterating over at most 3 pages of a ListReportJobs operation. // pageNum := 0 -// err := client.ListTagsPages(params, -// func(page *backup.ListTagsOutput, lastPage bool) bool { +// err := client.ListReportJobsPages(params, +// func(page *backup.ListReportJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Backup) ListTagsPages(input *ListTagsInput, fn func(*ListTagsOutput, bool) bool) error { - return c.ListTagsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Backup) ListReportJobsPages(input *ListReportJobsInput, fn func(*ListReportJobsOutput, bool) bool) error { + return c.ListReportJobsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTagsPagesWithContext same as ListTagsPages except +// ListReportJobsPagesWithContext same as ListReportJobsPages 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 *Backup) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, fn func(*ListTagsOutput, bool) bool, opts ...request.Option) error { +func (c *Backup) ListReportJobsPagesWithContext(ctx aws.Context, input *ListReportJobsInput, fn func(*ListReportJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTagsInput + var inCpy *ListReportJobsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTagsRequest(inCpy) + req, _ := c.ListReportJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6754,7 +6904,7 @@ func (c *Backup) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, } for p.Next() { - if !fn(p.Page().(*ListTagsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListReportJobsOutput), !p.HasNextPage()) { break } } @@ -6762,254 +6912,350 @@ func (c *Backup) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, return p.Err() } -const opPutBackupVaultAccessPolicy = "PutBackupVaultAccessPolicy" +const opListReportPlans = "ListReportPlans" -// PutBackupVaultAccessPolicyRequest generates a "aws/request.Request" representing the -// client's request for the PutBackupVaultAccessPolicy operation. The "output" return +// ListReportPlansRequest generates a "aws/request.Request" representing the +// client's request for the ListReportPlans 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 PutBackupVaultAccessPolicy for more information on using the PutBackupVaultAccessPolicy +// See ListReportPlans for more information on using the ListReportPlans // 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 PutBackupVaultAccessPolicyRequest method. -// req, resp := client.PutBackupVaultAccessPolicyRequest(params) +// // Example sending a request using the ListReportPlansRequest method. +// req, resp := client.ListReportPlansRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultAccessPolicy -func (c *Backup) PutBackupVaultAccessPolicyRequest(input *PutBackupVaultAccessPolicyInput) (req *request.Request, output *PutBackupVaultAccessPolicyOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlans +func (c *Backup) ListReportPlansRequest(input *ListReportPlansInput) (req *request.Request, output *ListReportPlansOutput) { op := &request.Operation{ - Name: opPutBackupVaultAccessPolicy, - HTTPMethod: "PUT", - HTTPPath: "/backup-vaults/{backupVaultName}/access-policy", + Name: opListReportPlans, + HTTPMethod: "GET", + HTTPPath: "/audit/report-plans", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &PutBackupVaultAccessPolicyInput{} + input = &ListReportPlansInput{} } - output = &PutBackupVaultAccessPolicyOutput{} + output = &ListReportPlansOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// PutBackupVaultAccessPolicy API operation for AWS Backup. +// ListReportPlans API operation for AWS Backup. // -// Sets a resource-based policy that is used to manage access permissions on -// the target backup vault. Requires a backup vault name and an access policy -// document in JSON format. +// Returns a list of your report plans. For detailed information about a single +// report plan, use DescribeReportPlan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation PutBackupVaultAccessPolicy for usage and error information. +// API operation ListReportPlans for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultAccessPolicy -func (c *Backup) PutBackupVaultAccessPolicy(input *PutBackupVaultAccessPolicyInput) (*PutBackupVaultAccessPolicyOutput, error) { - req, out := c.PutBackupVaultAccessPolicyRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListReportPlans +func (c *Backup) ListReportPlans(input *ListReportPlansInput) (*ListReportPlansOutput, error) { + req, out := c.ListReportPlansRequest(input) return out, req.Send() } -// PutBackupVaultAccessPolicyWithContext is the same as PutBackupVaultAccessPolicy with the addition of +// ListReportPlansWithContext is the same as ListReportPlans with the addition of // the ability to pass a context and additional request options. // -// See PutBackupVaultAccessPolicy for details on how to use this API operation. +// See ListReportPlans 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 *Backup) PutBackupVaultAccessPolicyWithContext(ctx aws.Context, input *PutBackupVaultAccessPolicyInput, opts ...request.Option) (*PutBackupVaultAccessPolicyOutput, error) { - req, out := c.PutBackupVaultAccessPolicyRequest(input) +func (c *Backup) ListReportPlansWithContext(ctx aws.Context, input *ListReportPlansInput, opts ...request.Option) (*ListReportPlansOutput, error) { + req, out := c.ListReportPlansRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opPutBackupVaultLockConfiguration = "PutBackupVaultLockConfiguration" +// ListReportPlansPages iterates over the pages of a ListReportPlans operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListReportPlans 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 ListReportPlans operation. +// pageNum := 0 +// err := client.ListReportPlansPages(params, +// func(page *backup.ListReportPlansOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListReportPlansPages(input *ListReportPlansInput, fn func(*ListReportPlansOutput, bool) bool) error { + return c.ListReportPlansPagesWithContext(aws.BackgroundContext(), input, fn) +} -// PutBackupVaultLockConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the PutBackupVaultLockConfiguration operation. The "output" return +// ListReportPlansPagesWithContext same as ListReportPlansPages 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 *Backup) ListReportPlansPagesWithContext(ctx aws.Context, input *ListReportPlansInput, fn func(*ListReportPlansOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListReportPlansInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListReportPlansRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListReportPlansOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreJobSummaries = "ListRestoreJobSummaries" + +// ListRestoreJobSummariesRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreJobSummaries 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 PutBackupVaultLockConfiguration for more information on using the PutBackupVaultLockConfiguration +// See ListRestoreJobSummaries for more information on using the ListRestoreJobSummaries // 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 PutBackupVaultLockConfigurationRequest method. -// req, resp := client.PutBackupVaultLockConfigurationRequest(params) +// // Example sending a request using the ListRestoreJobSummariesRequest method. +// req, resp := client.ListRestoreJobSummariesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfiguration -func (c *Backup) PutBackupVaultLockConfigurationRequest(input *PutBackupVaultLockConfigurationInput) (req *request.Request, output *PutBackupVaultLockConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries +func (c *Backup) ListRestoreJobSummariesRequest(input *ListRestoreJobSummariesInput) (req *request.Request, output *ListRestoreJobSummariesOutput) { op := &request.Operation{ - Name: opPutBackupVaultLockConfiguration, - HTTPMethod: "PUT", - HTTPPath: "/backup-vaults/{backupVaultName}/vault-lock", + Name: opListRestoreJobSummaries, + HTTPMethod: "GET", + HTTPPath: "/audit/restore-job-summaries", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &PutBackupVaultLockConfigurationInput{} + input = &ListRestoreJobSummariesInput{} } - output = &PutBackupVaultLockConfigurationOutput{} + output = &ListRestoreJobSummariesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// PutBackupVaultLockConfiguration API operation for AWS Backup. +// ListRestoreJobSummaries API operation for AWS Backup. // -// Applies Backup Vault Lock to a backup vault, preventing attempts to delete -// any recovery point stored in or created in a backup vault. Vault Lock also -// prevents attempts to update the lifecycle policy that controls the retention -// period of any recovery point currently stored in a backup vault. If specified, -// Vault Lock enforces a minimum and maximum retention period for future backup -// and copy jobs that target a backup vault. +// This request obtains a summary of restore jobs created or running within +// the the most recent 30 days. You can include parameters AccountID, State, +// ResourceType, AggregationPeriod, MaxResults, or NextToken to filter results. // -// Backup Vault Lock has been assessed by Cohasset Associates for use in environments -// that are subject to SEC 17a-4, CFTC, and FINRA regulations. For more information -// about how Backup Vault Lock relates to these regulations, see the Cohasset -// Associates Compliance Assessment. (samples/cohassetreport.zip) +// This request returns a summary that contains Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation PutBackupVaultLockConfiguration for usage and error information. +// API operation ListRestoreJobSummaries for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfiguration -func (c *Backup) PutBackupVaultLockConfiguration(input *PutBackupVaultLockConfigurationInput) (*PutBackupVaultLockConfigurationOutput, error) { - req, out := c.PutBackupVaultLockConfigurationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobSummaries +func (c *Backup) ListRestoreJobSummaries(input *ListRestoreJobSummariesInput) (*ListRestoreJobSummariesOutput, error) { + req, out := c.ListRestoreJobSummariesRequest(input) return out, req.Send() } -// PutBackupVaultLockConfigurationWithContext is the same as PutBackupVaultLockConfiguration with the addition of +// ListRestoreJobSummariesWithContext is the same as ListRestoreJobSummaries with the addition of // the ability to pass a context and additional request options. // -// See PutBackupVaultLockConfiguration for details on how to use this API operation. +// See ListRestoreJobSummaries 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 *Backup) PutBackupVaultLockConfigurationWithContext(ctx aws.Context, input *PutBackupVaultLockConfigurationInput, opts ...request.Option) (*PutBackupVaultLockConfigurationOutput, error) { - req, out := c.PutBackupVaultLockConfigurationRequest(input) +func (c *Backup) ListRestoreJobSummariesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, opts ...request.Option) (*ListRestoreJobSummariesOutput, error) { + req, out := c.ListRestoreJobSummariesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opPutBackupVaultNotifications = "PutBackupVaultNotifications" +// ListRestoreJobSummariesPages iterates over the pages of a ListRestoreJobSummaries operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreJobSummaries 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 ListRestoreJobSummaries operation. +// pageNum := 0 +// err := client.ListRestoreJobSummariesPages(params, +// func(page *backup.ListRestoreJobSummariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreJobSummariesPages(input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool) error { + return c.ListRestoreJobSummariesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// PutBackupVaultNotificationsRequest generates a "aws/request.Request" representing the -// client's request for the PutBackupVaultNotifications operation. The "output" return +// ListRestoreJobSummariesPagesWithContext same as ListRestoreJobSummariesPages 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 *Backup) ListRestoreJobSummariesPagesWithContext(ctx aws.Context, input *ListRestoreJobSummariesInput, fn func(*ListRestoreJobSummariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreJobSummariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreJobSummariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreJobSummariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreJobs = "ListRestoreJobs" + +// ListRestoreJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreJobs 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 PutBackupVaultNotifications for more information on using the PutBackupVaultNotifications +// See ListRestoreJobs for more information on using the ListRestoreJobs // 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 PutBackupVaultNotificationsRequest method. -// req, resp := client.PutBackupVaultNotificationsRequest(params) +// // Example sending a request using the ListRestoreJobsRequest method. +// req, resp := client.ListRestoreJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotifications -func (c *Backup) PutBackupVaultNotificationsRequest(input *PutBackupVaultNotificationsInput) (req *request.Request, output *PutBackupVaultNotificationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobs +func (c *Backup) ListRestoreJobsRequest(input *ListRestoreJobsInput) (req *request.Request, output *ListRestoreJobsOutput) { op := &request.Operation{ - Name: opPutBackupVaultNotifications, - HTTPMethod: "PUT", - HTTPPath: "/backup-vaults/{backupVaultName}/notification-configuration", + Name: opListRestoreJobs, + HTTPMethod: "GET", + HTTPPath: "/restore-jobs/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &PutBackupVaultNotificationsInput{} + input = &ListRestoreJobsInput{} } - output = &PutBackupVaultNotificationsOutput{} + output = &ListRestoreJobsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// PutBackupVaultNotifications API operation for AWS Backup. +// ListRestoreJobs API operation for AWS Backup. // -// Turns on notifications on a backup vault for the specified topic and events. +// Returns a list of jobs that Backup initiated to restore a saved resource, +// including details about the recovery process. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation PutBackupVaultNotifications for usage and error information. +// API operation ListRestoreJobs for usage and error information. // // Returned Error Types: // @@ -7026,79 +7272,139 @@ func (c *Backup) PutBackupVaultNotificationsRequest(input *PutBackupVaultNotific // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotifications -func (c *Backup) PutBackupVaultNotifications(input *PutBackupVaultNotificationsInput) (*PutBackupVaultNotificationsOutput, error) { - req, out := c.PutBackupVaultNotificationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobs +func (c *Backup) ListRestoreJobs(input *ListRestoreJobsInput) (*ListRestoreJobsOutput, error) { + req, out := c.ListRestoreJobsRequest(input) return out, req.Send() } -// PutBackupVaultNotificationsWithContext is the same as PutBackupVaultNotifications with the addition of +// ListRestoreJobsWithContext is the same as ListRestoreJobs with the addition of // the ability to pass a context and additional request options. // -// See PutBackupVaultNotifications for details on how to use this API operation. +// See ListRestoreJobs 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 *Backup) PutBackupVaultNotificationsWithContext(ctx aws.Context, input *PutBackupVaultNotificationsInput, opts ...request.Option) (*PutBackupVaultNotificationsOutput, error) { - req, out := c.PutBackupVaultNotificationsRequest(input) +func (c *Backup) ListRestoreJobsWithContext(ctx aws.Context, input *ListRestoreJobsInput, opts ...request.Option) (*ListRestoreJobsOutput, error) { + req, out := c.ListRestoreJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartBackupJob = "StartBackupJob" +// ListRestoreJobsPages iterates over the pages of a ListRestoreJobs operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreJobs 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 ListRestoreJobs operation. +// pageNum := 0 +// err := client.ListRestoreJobsPages(params, +// func(page *backup.ListRestoreJobsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreJobsPages(input *ListRestoreJobsInput, fn func(*ListRestoreJobsOutput, bool) bool) error { + return c.ListRestoreJobsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StartBackupJobRequest generates a "aws/request.Request" representing the -// client's request for the StartBackupJob operation. The "output" return +// ListRestoreJobsPagesWithContext same as ListRestoreJobsPages 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 *Backup) ListRestoreJobsPagesWithContext(ctx aws.Context, input *ListRestoreJobsInput, fn func(*ListRestoreJobsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreJobsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreJobsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreJobsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreJobsByProtectedResource = "ListRestoreJobsByProtectedResource" + +// ListRestoreJobsByProtectedResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreJobsByProtectedResource 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 StartBackupJob for more information on using the StartBackupJob +// See ListRestoreJobsByProtectedResource for more information on using the ListRestoreJobsByProtectedResource // 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 StartBackupJobRequest method. -// req, resp := client.StartBackupJobRequest(params) +// // Example sending a request using the ListRestoreJobsByProtectedResourceRequest method. +// req, resp := client.ListRestoreJobsByProtectedResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob -func (c *Backup) StartBackupJobRequest(input *StartBackupJobInput) (req *request.Request, output *StartBackupJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsByProtectedResource +func (c *Backup) ListRestoreJobsByProtectedResourceRequest(input *ListRestoreJobsByProtectedResourceInput) (req *request.Request, output *ListRestoreJobsByProtectedResourceOutput) { op := &request.Operation{ - Name: opStartBackupJob, - HTTPMethod: "PUT", - HTTPPath: "/backup-jobs", + Name: opListRestoreJobsByProtectedResource, + HTTPMethod: "GET", + HTTPPath: "/resources/{resourceArn}/restore-jobs/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartBackupJobInput{} + input = &ListRestoreJobsByProtectedResourceInput{} } - output = &StartBackupJobOutput{} + output = &ListRestoreJobsByProtectedResourceOutput{} req = c.newRequest(op, input, output) return } -// StartBackupJob API operation for AWS Backup. +// ListRestoreJobsByProtectedResource API operation for AWS Backup. // -// Starts an on-demand backup job for the specified resource. +// This returns restore jobs that contain the specified protected resource. +// +// You must include ResourceArn. You can optionally include NextToken, ByStatus, +// MaxResults, ByRecoveryPointCreationDateAfter , and ByRecoveryPointCreationDateBefore. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation StartBackupJob for usage and error information. +// API operation ListRestoreJobsByProtectedResource for usage and error information. // // Returned Error Types: // @@ -7112,189 +7418,280 @@ func (c *Backup) StartBackupJobRequest(input *StartBackupJobInput) (req *request // - MissingParameterValueException // Indicates that a required parameter is missing. // -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - LimitExceededException -// A limit in the request has been exceeded; for example, a maximum number of -// items allowed in a request. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob -func (c *Backup) StartBackupJob(input *StartBackupJobInput) (*StartBackupJobOutput, error) { - req, out := c.StartBackupJobRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreJobsByProtectedResource +func (c *Backup) ListRestoreJobsByProtectedResource(input *ListRestoreJobsByProtectedResourceInput) (*ListRestoreJobsByProtectedResourceOutput, error) { + req, out := c.ListRestoreJobsByProtectedResourceRequest(input) return out, req.Send() } -// StartBackupJobWithContext is the same as StartBackupJob with the addition of +// ListRestoreJobsByProtectedResourceWithContext is the same as ListRestoreJobsByProtectedResource with the addition of // the ability to pass a context and additional request options. // -// See StartBackupJob for details on how to use this API operation. +// See ListRestoreJobsByProtectedResource 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 *Backup) StartBackupJobWithContext(ctx aws.Context, input *StartBackupJobInput, opts ...request.Option) (*StartBackupJobOutput, error) { - req, out := c.StartBackupJobRequest(input) +func (c *Backup) ListRestoreJobsByProtectedResourceWithContext(ctx aws.Context, input *ListRestoreJobsByProtectedResourceInput, opts ...request.Option) (*ListRestoreJobsByProtectedResourceOutput, error) { + req, out := c.ListRestoreJobsByProtectedResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartCopyJob = "StartCopyJob" - -// StartCopyJobRequest generates a "aws/request.Request" representing the -// client's request for the StartCopyJob operation. The "output" return -// value will be populated with the request's response once the request completes -// successfully. +// ListRestoreJobsByProtectedResourcePages iterates over the pages of a ListRestoreJobsByProtectedResource operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// 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 ListRestoreJobsByProtectedResource method for more information on how to use this operation. // -// See StartCopyJob for more information on using the StartCopyJob -// API call, and error handling. +// Note: This operation can generate multiple requests to a service. // -// This method is useful when you want to inject custom logic or configuration +// // Example iterating over at most 3 pages of a ListRestoreJobsByProtectedResource operation. +// pageNum := 0 +// err := client.ListRestoreJobsByProtectedResourcePages(params, +// func(page *backup.ListRestoreJobsByProtectedResourceOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreJobsByProtectedResourcePages(input *ListRestoreJobsByProtectedResourceInput, fn func(*ListRestoreJobsByProtectedResourceOutput, bool) bool) error { + return c.ListRestoreJobsByProtectedResourcePagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRestoreJobsByProtectedResourcePagesWithContext same as ListRestoreJobsByProtectedResourcePages 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 *Backup) ListRestoreJobsByProtectedResourcePagesWithContext(ctx aws.Context, input *ListRestoreJobsByProtectedResourceInput, fn func(*ListRestoreJobsByProtectedResourceOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreJobsByProtectedResourceInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreJobsByProtectedResourceRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreJobsByProtectedResourceOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreTestingPlans = "ListRestoreTestingPlans" + +// ListRestoreTestingPlansRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreTestingPlans 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 ListRestoreTestingPlans for more information on using the ListRestoreTestingPlans +// 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 StartCopyJobRequest method. -// req, resp := client.StartCopyJobRequest(params) +// // Example sending a request using the ListRestoreTestingPlansRequest method. +// req, resp := client.ListRestoreTestingPlansRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob -func (c *Backup) StartCopyJobRequest(input *StartCopyJobInput) (req *request.Request, output *StartCopyJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingPlans +func (c *Backup) ListRestoreTestingPlansRequest(input *ListRestoreTestingPlansInput) (req *request.Request, output *ListRestoreTestingPlansOutput) { op := &request.Operation{ - Name: opStartCopyJob, - HTTPMethod: "PUT", - HTTPPath: "/copy-jobs", + Name: opListRestoreTestingPlans, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartCopyJobInput{} + input = &ListRestoreTestingPlansInput{} } - output = &StartCopyJobOutput{} + output = &ListRestoreTestingPlansOutput{} req = c.newRequest(op, input, output) return } -// StartCopyJob API operation for AWS Backup. +// ListRestoreTestingPlans API operation for AWS Backup. // -// Starts a job to create a one-time copy of the specified resource. -// -// Does not support continuous backups. +// Returns a list of restore testing plans. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation StartCopyJob for usage and error information. +// API operation ListRestoreTestingPlans for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - LimitExceededException -// A limit in the request has been exceeded; for example, a maximum number of -// items allowed in a request. -// -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob -func (c *Backup) StartCopyJob(input *StartCopyJobInput) (*StartCopyJobOutput, error) { - req, out := c.StartCopyJobRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingPlans +func (c *Backup) ListRestoreTestingPlans(input *ListRestoreTestingPlansInput) (*ListRestoreTestingPlansOutput, error) { + req, out := c.ListRestoreTestingPlansRequest(input) return out, req.Send() } -// StartCopyJobWithContext is the same as StartCopyJob with the addition of +// ListRestoreTestingPlansWithContext is the same as ListRestoreTestingPlans with the addition of // the ability to pass a context and additional request options. // -// See StartCopyJob for details on how to use this API operation. +// See ListRestoreTestingPlans 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 *Backup) StartCopyJobWithContext(ctx aws.Context, input *StartCopyJobInput, opts ...request.Option) (*StartCopyJobOutput, error) { - req, out := c.StartCopyJobRequest(input) +func (c *Backup) ListRestoreTestingPlansWithContext(ctx aws.Context, input *ListRestoreTestingPlansInput, opts ...request.Option) (*ListRestoreTestingPlansOutput, error) { + req, out := c.ListRestoreTestingPlansRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartReportJob = "StartReportJob" +// ListRestoreTestingPlansPages iterates over the pages of a ListRestoreTestingPlans operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreTestingPlans 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 ListRestoreTestingPlans operation. +// pageNum := 0 +// err := client.ListRestoreTestingPlansPages(params, +// func(page *backup.ListRestoreTestingPlansOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreTestingPlansPages(input *ListRestoreTestingPlansInput, fn func(*ListRestoreTestingPlansOutput, bool) bool) error { + return c.ListRestoreTestingPlansPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StartReportJobRequest generates a "aws/request.Request" representing the -// client's request for the StartReportJob operation. The "output" return +// ListRestoreTestingPlansPagesWithContext same as ListRestoreTestingPlansPages 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 *Backup) ListRestoreTestingPlansPagesWithContext(ctx aws.Context, input *ListRestoreTestingPlansInput, fn func(*ListRestoreTestingPlansOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreTestingPlansInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreTestingPlansRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreTestingPlansOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRestoreTestingSelections = "ListRestoreTestingSelections" + +// ListRestoreTestingSelectionsRequest generates a "aws/request.Request" representing the +// client's request for the ListRestoreTestingSelections 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 StartReportJob for more information on using the StartReportJob +// See ListRestoreTestingSelections for more information on using the ListRestoreTestingSelections // 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 StartReportJobRequest method. -// req, resp := client.StartReportJobRequest(params) +// // Example sending a request using the ListRestoreTestingSelectionsRequest method. +// req, resp := client.ListRestoreTestingSelectionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJob -func (c *Backup) StartReportJobRequest(input *StartReportJobInput) (req *request.Request, output *StartReportJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingSelections +func (c *Backup) ListRestoreTestingSelectionsRequest(input *ListRestoreTestingSelectionsInput) (req *request.Request, output *ListRestoreTestingSelectionsOutput) { op := &request.Operation{ - Name: opStartReportJob, - HTTPMethod: "POST", - HTTPPath: "/audit/report-jobs/{reportPlanName}", + Name: opListRestoreTestingSelections, + HTTPMethod: "GET", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartReportJobInput{} + input = &ListRestoreTestingSelectionsInput{} } - output = &StartReportJobOutput{} + output = &ListRestoreTestingSelectionsOutput{} req = c.newRequest(op, input, output) return } -// StartReportJob API operation for AWS Backup. +// ListRestoreTestingSelections API operation for AWS Backup. // -// Starts an on-demand report job for the specified report plan. +// Returns a list of restore testing selections. Can be filtered by MaxResults +// and RestoreTestingPlanName. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation StartReportJob for usage and error information. +// API operation ListRestoreTestingSelections for usage and error information. // // Returned Error Types: // @@ -7302,88 +7699,148 @@ func (c *Backup) StartReportJobRequest(input *StartReportJobInput) (req *request // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - ServiceUnavailableException -// The request failed due to a temporary failure of the server. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJob -func (c *Backup) StartReportJob(input *StartReportJobInput) (*StartReportJobOutput, error) { - req, out := c.StartReportJobRequest(input) +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListRestoreTestingSelections +func (c *Backup) ListRestoreTestingSelections(input *ListRestoreTestingSelectionsInput) (*ListRestoreTestingSelectionsOutput, error) { + req, out := c.ListRestoreTestingSelectionsRequest(input) return out, req.Send() } -// StartReportJobWithContext is the same as StartReportJob with the addition of +// ListRestoreTestingSelectionsWithContext is the same as ListRestoreTestingSelections with the addition of // the ability to pass a context and additional request options. // -// See StartReportJob for details on how to use this API operation. +// See ListRestoreTestingSelections 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 *Backup) StartReportJobWithContext(ctx aws.Context, input *StartReportJobInput, opts ...request.Option) (*StartReportJobOutput, error) { - req, out := c.StartReportJobRequest(input) +func (c *Backup) ListRestoreTestingSelectionsWithContext(ctx aws.Context, input *ListRestoreTestingSelectionsInput, opts ...request.Option) (*ListRestoreTestingSelectionsOutput, error) { + req, out := c.ListRestoreTestingSelectionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartRestoreJob = "StartRestoreJob" +// ListRestoreTestingSelectionsPages iterates over the pages of a ListRestoreTestingSelections operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRestoreTestingSelections 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 ListRestoreTestingSelections operation. +// pageNum := 0 +// err := client.ListRestoreTestingSelectionsPages(params, +// func(page *backup.ListRestoreTestingSelectionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListRestoreTestingSelectionsPages(input *ListRestoreTestingSelectionsInput, fn func(*ListRestoreTestingSelectionsOutput, bool) bool) error { + return c.ListRestoreTestingSelectionsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StartRestoreJobRequest generates a "aws/request.Request" representing the -// client's request for the StartRestoreJob operation. The "output" return +// ListRestoreTestingSelectionsPagesWithContext same as ListRestoreTestingSelectionsPages 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 *Backup) ListRestoreTestingSelectionsPagesWithContext(ctx aws.Context, input *ListRestoreTestingSelectionsInput, fn func(*ListRestoreTestingSelectionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRestoreTestingSelectionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRestoreTestingSelectionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRestoreTestingSelectionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTags = "ListTags" + +// ListTagsRequest generates a "aws/request.Request" representing the +// client's request for the ListTags 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 StartRestoreJob for more information on using the StartRestoreJob +// See ListTags for more information on using the ListTags // 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 StartRestoreJobRequest method. -// req, resp := client.StartRestoreJobRequest(params) +// // Example sending a request using the ListTagsRequest method. +// req, resp := client.ListTagsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJob -func (c *Backup) StartRestoreJobRequest(input *StartRestoreJobInput) (req *request.Request, output *StartRestoreJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTags +func (c *Backup) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) { op := &request.Operation{ - Name: opStartRestoreJob, - HTTPMethod: "PUT", - HTTPPath: "/restore-jobs", + Name: opListTags, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartRestoreJobInput{} + input = &ListTagsInput{} } - output = &StartRestoreJobOutput{} + output = &ListTagsOutput{} req = c.newRequest(op, input, output) return } -// StartRestoreJob API operation for AWS Backup. +// ListTags API operation for AWS Backup. // -// Recovers the saved resource identified by an Amazon Resource Name (ARN). +// Returns a list of key-value pairs assigned to a target recovery point, backup +// plan, or backup vault. +// +// ListTags only works for resource types that support full Backup management +// of their backups. Those resource types are listed in the "Full Backup management" +// section of the Feature availability by resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) +// table. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation StartRestoreJob for usage and error information. +// API operation ListTags for usage and error information. // // Returned Error Types: // @@ -7400,95 +7857,136 @@ func (c *Backup) StartRestoreJobRequest(input *StartRestoreJobInput) (req *reque // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJob -func (c *Backup) StartRestoreJob(input *StartRestoreJobInput) (*StartRestoreJobOutput, error) { - req, out := c.StartRestoreJobRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/ListTags +func (c *Backup) ListTags(input *ListTagsInput) (*ListTagsOutput, error) { + req, out := c.ListTagsRequest(input) return out, req.Send() } -// StartRestoreJobWithContext is the same as StartRestoreJob with the addition of +// ListTagsWithContext is the same as ListTags with the addition of // the ability to pass a context and additional request options. // -// See StartRestoreJob for details on how to use this API operation. +// See ListTags 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 *Backup) StartRestoreJobWithContext(ctx aws.Context, input *StartRestoreJobInput, opts ...request.Option) (*StartRestoreJobOutput, error) { - req, out := c.StartRestoreJobRequest(input) +func (c *Backup) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) { + req, out := c.ListTagsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStopBackupJob = "StopBackupJob" +// ListTagsPages iterates over the pages of a ListTags operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTags 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 ListTags operation. +// pageNum := 0 +// err := client.ListTagsPages(params, +// func(page *backup.ListTagsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Backup) ListTagsPages(input *ListTagsInput, fn func(*ListTagsOutput, bool) bool) error { + return c.ListTagsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StopBackupJobRequest generates a "aws/request.Request" representing the -// client's request for the StopBackupJob operation. The "output" return +// ListTagsPagesWithContext same as ListTagsPages 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 *Backup) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, fn func(*ListTagsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTagsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTagsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTagsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutBackupVaultAccessPolicy = "PutBackupVaultAccessPolicy" + +// PutBackupVaultAccessPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutBackupVaultAccessPolicy 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 StopBackupJob for more information on using the StopBackupJob +// See PutBackupVaultAccessPolicy for more information on using the PutBackupVaultAccessPolicy // 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 StopBackupJobRequest method. -// req, resp := client.StopBackupJobRequest(params) +// // Example sending a request using the PutBackupVaultAccessPolicyRequest method. +// req, resp := client.PutBackupVaultAccessPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJob -func (c *Backup) StopBackupJobRequest(input *StopBackupJobInput) (req *request.Request, output *StopBackupJobOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultAccessPolicy +func (c *Backup) PutBackupVaultAccessPolicyRequest(input *PutBackupVaultAccessPolicyInput) (req *request.Request, output *PutBackupVaultAccessPolicyOutput) { op := &request.Operation{ - Name: opStopBackupJob, - HTTPMethod: "POST", - HTTPPath: "/backup-jobs/{backupJobId}", + Name: opPutBackupVaultAccessPolicy, + HTTPMethod: "PUT", + HTTPPath: "/backup-vaults/{backupVaultName}/access-policy", } if input == nil { - input = &StopBackupJobInput{} + input = &PutBackupVaultAccessPolicyInput{} } - output = &StopBackupJobOutput{} + output = &PutBackupVaultAccessPolicyOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// StopBackupJob API operation for AWS Backup. -// -// Attempts to cancel a job to create a one-time backup of a resource. +// PutBackupVaultAccessPolicy API operation for AWS Backup. // -// This action is not supported for the following services: Amazon FSx for Windows -// File Server, Amazon FSx for Lustre, FSx for ONTAP , Amazon FSx for OpenZFS, -// Amazon DocumentDB (with MongoDB compatibility), Amazon RDS, Amazon Aurora, -// and Amazon Neptune. +// Sets a resource-based policy that is used to manage access permissions on +// the target backup vault. Requires a backup vault name and an access policy +// document in JSON format. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation StopBackupJob for usage and error information. +// API operation PutBackupVaultAccessPolicy for usage and error information. // // Returned Error Types: // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // @@ -7496,88 +7994,96 @@ func (c *Backup) StopBackupJobRequest(input *StopBackupJobInput) (req *request.R // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. +// - MissingParameterValueException +// Indicates that a required parameter is missing. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJob -func (c *Backup) StopBackupJob(input *StopBackupJobInput) (*StopBackupJobOutput, error) { - req, out := c.StopBackupJobRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultAccessPolicy +func (c *Backup) PutBackupVaultAccessPolicy(input *PutBackupVaultAccessPolicyInput) (*PutBackupVaultAccessPolicyOutput, error) { + req, out := c.PutBackupVaultAccessPolicyRequest(input) return out, req.Send() } -// StopBackupJobWithContext is the same as StopBackupJob with the addition of +// PutBackupVaultAccessPolicyWithContext is the same as PutBackupVaultAccessPolicy with the addition of // the ability to pass a context and additional request options. // -// See StopBackupJob for details on how to use this API operation. +// See PutBackupVaultAccessPolicy 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 *Backup) StopBackupJobWithContext(ctx aws.Context, input *StopBackupJobInput, opts ...request.Option) (*StopBackupJobOutput, error) { - req, out := c.StopBackupJobRequest(input) +func (c *Backup) PutBackupVaultAccessPolicyWithContext(ctx aws.Context, input *PutBackupVaultAccessPolicyInput, opts ...request.Option) (*PutBackupVaultAccessPolicyOutput, error) { + req, out := c.PutBackupVaultAccessPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +const opPutBackupVaultLockConfiguration = "PutBackupVaultLockConfiguration" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// PutBackupVaultLockConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutBackupVaultLockConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See PutBackupVaultLockConfiguration for more information on using the PutBackupVaultLockConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the PutBackupVaultLockConfigurationRequest method. +// req, resp := client.PutBackupVaultLockConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/TagResource -func (c *Backup) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfiguration +func (c *Backup) PutBackupVaultLockConfigurationRequest(input *PutBackupVaultLockConfigurationInput) (req *request.Request, output *PutBackupVaultLockConfigurationOutput) { op := &request.Operation{ - Name: opTagResource, - HTTPMethod: "POST", - HTTPPath: "/tags/{resourceArn}", + Name: opPutBackupVaultLockConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/backup-vaults/{backupVaultName}/vault-lock", } if input == nil { - input = &TagResourceInput{} + input = &PutBackupVaultLockConfigurationInput{} } - output = &TagResourceOutput{} + output = &PutBackupVaultLockConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// TagResource API operation for AWS Backup. +// PutBackupVaultLockConfiguration API operation for AWS Backup. // -// Assigns a set of key-value pairs to a recovery point, backup plan, or backup -// vault identified by an Amazon Resource Name (ARN). +// Applies Backup Vault Lock to a backup vault, preventing attempts to delete +// any recovery point stored in or created in a backup vault. Vault Lock also +// prevents attempts to update the lifecycle policy that controls the retention +// period of any recovery point currently stored in a backup vault. If specified, +// Vault Lock enforces a minimum and maximum retention period for future backup +// and copy jobs that target a backup vault. +// +// Backup Vault Lock has been assessed by Cohasset Associates for use in environments +// that are subject to SEC 17a-4, CFTC, and FINRA regulations. For more information +// about how Backup Vault Lock relates to these regulations, see the Cohasset +// Associates Compliance Assessment. (samples/cohassetreport.zip) // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation TagResource for usage and error information. +// API operation PutBackupVaultLockConfiguration for usage and error information. // // Returned Error Types: // @@ -7591,88 +8097,87 @@ func (c *Backup) TagResourceRequest(input *TagResourceInput) (req *request.Reque // - MissingParameterValueException // Indicates that a required parameter is missing. // +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - LimitExceededException -// A limit in the request has been exceeded; for example, a maximum number of -// items allowed in a request. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/TagResource -func (c *Backup) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultLockConfiguration +func (c *Backup) PutBackupVaultLockConfiguration(input *PutBackupVaultLockConfigurationInput) (*PutBackupVaultLockConfigurationOutput, error) { + req, out := c.PutBackupVaultLockConfigurationRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// PutBackupVaultLockConfigurationWithContext is the same as PutBackupVaultLockConfiguration with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See PutBackupVaultLockConfiguration 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 *Backup) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *Backup) PutBackupVaultLockConfigurationWithContext(ctx aws.Context, input *PutBackupVaultLockConfigurationInput, opts ...request.Option) (*PutBackupVaultLockConfigurationOutput, error) { + req, out := c.PutBackupVaultLockConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +const opPutBackupVaultNotifications = "PutBackupVaultNotifications" -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// PutBackupVaultNotificationsRequest generates a "aws/request.Request" representing the +// client's request for the PutBackupVaultNotifications operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See PutBackupVaultNotifications for more information on using the PutBackupVaultNotifications // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the PutBackupVaultNotificationsRequest method. +// req, resp := client.PutBackupVaultNotificationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UntagResource -func (c *Backup) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotifications +func (c *Backup) PutBackupVaultNotificationsRequest(input *PutBackupVaultNotificationsInput) (req *request.Request, output *PutBackupVaultNotificationsOutput) { op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "POST", - HTTPPath: "/untag/{resourceArn}", + Name: opPutBackupVaultNotifications, + HTTPMethod: "PUT", + HTTPPath: "/backup-vaults/{backupVaultName}/notification-configuration", } if input == nil { - input = &UntagResourceInput{} + input = &PutBackupVaultNotificationsInput{} } - output = &UntagResourceOutput{} + output = &PutBackupVaultNotificationsOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for AWS Backup. +// PutBackupVaultNotifications API operation for AWS Backup. // -// Removes a set of key-value pairs from a recovery point, backup plan, or backup -// vault identified by an Amazon Resource Name (ARN) +// Turns on notifications on a backup vault for the specified topic and events. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UntagResource for usage and error information. +// API operation PutBackupVaultNotifications for usage and error information. // // Returned Error Types: // @@ -7689,183 +8194,181 @@ func (c *Backup) UntagResourceRequest(input *UntagResourceInput) (req *request.R // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UntagResource -func (c *Backup) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutBackupVaultNotifications +func (c *Backup) PutBackupVaultNotifications(input *PutBackupVaultNotificationsInput) (*PutBackupVaultNotificationsOutput, error) { + req, out := c.PutBackupVaultNotificationsRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// PutBackupVaultNotificationsWithContext is the same as PutBackupVaultNotifications with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See PutBackupVaultNotifications 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 *Backup) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *Backup) PutBackupVaultNotificationsWithContext(ctx aws.Context, input *PutBackupVaultNotificationsInput, opts ...request.Option) (*PutBackupVaultNotificationsOutput, error) { + req, out := c.PutBackupVaultNotificationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateBackupPlan = "UpdateBackupPlan" +const opPutRestoreValidationResult = "PutRestoreValidationResult" -// UpdateBackupPlanRequest generates a "aws/request.Request" representing the -// client's request for the UpdateBackupPlan operation. The "output" return +// PutRestoreValidationResultRequest generates a "aws/request.Request" representing the +// client's request for the PutRestoreValidationResult 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 UpdateBackupPlan for more information on using the UpdateBackupPlan +// See PutRestoreValidationResult for more information on using the PutRestoreValidationResult // 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 UpdateBackupPlanRequest method. -// req, resp := client.UpdateBackupPlanRequest(params) +// // Example sending a request using the PutRestoreValidationResultRequest method. +// req, resp := client.PutRestoreValidationResultRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlan -func (c *Backup) UpdateBackupPlanRequest(input *UpdateBackupPlanInput) (req *request.Request, output *UpdateBackupPlanOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutRestoreValidationResult +func (c *Backup) PutRestoreValidationResultRequest(input *PutRestoreValidationResultInput) (req *request.Request, output *PutRestoreValidationResultOutput) { op := &request.Operation{ - Name: opUpdateBackupPlan, - HTTPMethod: "POST", - HTTPPath: "/backup/plans/{backupPlanId}", + Name: opPutRestoreValidationResult, + HTTPMethod: "PUT", + HTTPPath: "/restore-jobs/{restoreJobId}/validations", } if input == nil { - input = &UpdateBackupPlanInput{} + input = &PutRestoreValidationResultInput{} } - output = &UpdateBackupPlanOutput{} + output = &PutRestoreValidationResultOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateBackupPlan API operation for AWS Backup. +// PutRestoreValidationResult API operation for AWS Backup. // -// Updates an existing backup plan identified by its backupPlanId with the input -// document in JSON format. The new version is uniquely identified by a VersionId. +// This request allows you to send your independent self-run restore test validation +// results. RestoreJobId and ValidationStatus are required. Optionally, you +// can input a ValidationStatusMessage. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateBackupPlan for usage and error information. +// API operation PutRestoreValidationResult for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlan -func (c *Backup) UpdateBackupPlan(input *UpdateBackupPlanInput) (*UpdateBackupPlanOutput, error) { - req, out := c.UpdateBackupPlanRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/PutRestoreValidationResult +func (c *Backup) PutRestoreValidationResult(input *PutRestoreValidationResultInput) (*PutRestoreValidationResultOutput, error) { + req, out := c.PutRestoreValidationResultRequest(input) return out, req.Send() } -// UpdateBackupPlanWithContext is the same as UpdateBackupPlan with the addition of +// PutRestoreValidationResultWithContext is the same as PutRestoreValidationResult with the addition of // the ability to pass a context and additional request options. // -// See UpdateBackupPlan for details on how to use this API operation. +// See PutRestoreValidationResult 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 *Backup) UpdateBackupPlanWithContext(ctx aws.Context, input *UpdateBackupPlanInput, opts ...request.Option) (*UpdateBackupPlanOutput, error) { - req, out := c.UpdateBackupPlanRequest(input) +func (c *Backup) PutRestoreValidationResultWithContext(ctx aws.Context, input *PutRestoreValidationResultInput, opts ...request.Option) (*PutRestoreValidationResultOutput, error) { + req, out := c.PutRestoreValidationResultRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateFramework = "UpdateFramework" +const opStartBackupJob = "StartBackupJob" -// UpdateFrameworkRequest generates a "aws/request.Request" representing the -// client's request for the UpdateFramework operation. The "output" return +// StartBackupJobRequest generates a "aws/request.Request" representing the +// client's request for the StartBackupJob 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 UpdateFramework for more information on using the UpdateFramework +// See StartBackupJob for more information on using the StartBackupJob // 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 UpdateFrameworkRequest method. -// req, resp := client.UpdateFrameworkRequest(params) +// // Example sending a request using the StartBackupJobRequest method. +// req, resp := client.StartBackupJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFramework -func (c *Backup) UpdateFrameworkRequest(input *UpdateFrameworkInput) (req *request.Request, output *UpdateFrameworkOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob +func (c *Backup) StartBackupJobRequest(input *StartBackupJobInput) (req *request.Request, output *StartBackupJobOutput) { op := &request.Operation{ - Name: opUpdateFramework, + Name: opStartBackupJob, HTTPMethod: "PUT", - HTTPPath: "/audit/frameworks/{frameworkName}", + HTTPPath: "/backup-jobs", } if input == nil { - input = &UpdateFrameworkInput{} + input = &StartBackupJobInput{} } - output = &UpdateFrameworkOutput{} + output = &StartBackupJobOutput{} req = c.newRequest(op, input, output) return } -// UpdateFramework API operation for AWS Backup. +// StartBackupJob API operation for AWS Backup. // -// Updates an existing framework identified by its FrameworkName with the input -// document in JSON format. +// Starts an on-demand backup job for the specified resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateFramework for usage and error information. +// API operation StartBackupJob for usage and error information. // // Returned Error Types: // -// - AlreadyExistsException -// The required resource already exists. -// // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // -// - LimitExceededException -// A limit in the request has been exceeded; for example, a maximum number of -// items allowed in a request. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. @@ -7873,385 +8376,383 @@ func (c *Backup) UpdateFrameworkRequest(input *UpdateFrameworkInput) (req *reque // - MissingParameterValueException // Indicates that a required parameter is missing. // -// - ConflictException -// Backup can't perform the action that you requested until it finishes performing -// a previous action. Try again later. +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. // // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFramework -func (c *Backup) UpdateFramework(input *UpdateFrameworkInput) (*UpdateFrameworkOutput, error) { - req, out := c.UpdateFrameworkRequest(input) +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartBackupJob +func (c *Backup) StartBackupJob(input *StartBackupJobInput) (*StartBackupJobOutput, error) { + req, out := c.StartBackupJobRequest(input) return out, req.Send() } -// UpdateFrameworkWithContext is the same as UpdateFramework with the addition of +// StartBackupJobWithContext is the same as StartBackupJob with the addition of // the ability to pass a context and additional request options. // -// See UpdateFramework for details on how to use this API operation. +// See StartBackupJob 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 *Backup) UpdateFrameworkWithContext(ctx aws.Context, input *UpdateFrameworkInput, opts ...request.Option) (*UpdateFrameworkOutput, error) { - req, out := c.UpdateFrameworkRequest(input) +func (c *Backup) StartBackupJobWithContext(ctx aws.Context, input *StartBackupJobInput, opts ...request.Option) (*StartBackupJobOutput, error) { + req, out := c.StartBackupJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateGlobalSettings = "UpdateGlobalSettings" +const opStartCopyJob = "StartCopyJob" -// UpdateGlobalSettingsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateGlobalSettings operation. The "output" return +// StartCopyJobRequest generates a "aws/request.Request" representing the +// client's request for the StartCopyJob 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 UpdateGlobalSettings for more information on using the UpdateGlobalSettings +// See StartCopyJob for more information on using the StartCopyJob // 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 UpdateGlobalSettingsRequest method. -// req, resp := client.UpdateGlobalSettingsRequest(params) +// // Example sending a request using the StartCopyJobRequest method. +// req, resp := client.StartCopyJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettings -func (c *Backup) UpdateGlobalSettingsRequest(input *UpdateGlobalSettingsInput) (req *request.Request, output *UpdateGlobalSettingsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob +func (c *Backup) StartCopyJobRequest(input *StartCopyJobInput) (req *request.Request, output *StartCopyJobOutput) { op := &request.Operation{ - Name: opUpdateGlobalSettings, + Name: opStartCopyJob, HTTPMethod: "PUT", - HTTPPath: "/global-settings", + HTTPPath: "/copy-jobs", } if input == nil { - input = &UpdateGlobalSettingsInput{} + input = &StartCopyJobInput{} } - output = &UpdateGlobalSettingsOutput{} + output = &StartCopyJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateGlobalSettings API operation for AWS Backup. +// StartCopyJob API operation for AWS Backup. // -// Updates whether the Amazon Web Services account is opted in to cross-account -// backup. Returns an error if the account is not an Organizations management -// account. Use the DescribeGlobalSettings API to determine the current settings. +// Starts a job to create a one-time copy of the specified resource. +// +// Does not support continuous backups. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateGlobalSettings for usage and error information. +// API operation StartCopyJob for usage and error information. // // Returned Error Types: // -// - ServiceUnavailableException -// The request failed due to a temporary failure of the server. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// // - InvalidRequestException // Indicates that something is wrong with the input to the request. For example, // a parameter is of the wrong type. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettings -func (c *Backup) UpdateGlobalSettings(input *UpdateGlobalSettingsInput) (*UpdateGlobalSettingsOutput, error) { - req, out := c.UpdateGlobalSettingsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartCopyJob +func (c *Backup) StartCopyJob(input *StartCopyJobInput) (*StartCopyJobOutput, error) { + req, out := c.StartCopyJobRequest(input) return out, req.Send() } -// UpdateGlobalSettingsWithContext is the same as UpdateGlobalSettings with the addition of +// StartCopyJobWithContext is the same as StartCopyJob with the addition of // the ability to pass a context and additional request options. // -// See UpdateGlobalSettings for details on how to use this API operation. +// See StartCopyJob 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 *Backup) UpdateGlobalSettingsWithContext(ctx aws.Context, input *UpdateGlobalSettingsInput, opts ...request.Option) (*UpdateGlobalSettingsOutput, error) { - req, out := c.UpdateGlobalSettingsRequest(input) +func (c *Backup) StartCopyJobWithContext(ctx aws.Context, input *StartCopyJobInput, opts ...request.Option) (*StartCopyJobOutput, error) { + req, out := c.StartCopyJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateRecoveryPointLifecycle = "UpdateRecoveryPointLifecycle" +const opStartReportJob = "StartReportJob" -// UpdateRecoveryPointLifecycleRequest generates a "aws/request.Request" representing the -// client's request for the UpdateRecoveryPointLifecycle operation. The "output" return +// StartReportJobRequest generates a "aws/request.Request" representing the +// client's request for the StartReportJob 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 UpdateRecoveryPointLifecycle for more information on using the UpdateRecoveryPointLifecycle +// See StartReportJob for more information on using the StartReportJob // 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 UpdateRecoveryPointLifecycleRequest method. -// req, resp := client.UpdateRecoveryPointLifecycleRequest(params) +// // Example sending a request using the StartReportJobRequest method. +// req, resp := client.StartReportJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycle -func (c *Backup) UpdateRecoveryPointLifecycleRequest(input *UpdateRecoveryPointLifecycleInput) (req *request.Request, output *UpdateRecoveryPointLifecycleOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJob +func (c *Backup) StartReportJobRequest(input *StartReportJobInput) (req *request.Request, output *StartReportJobOutput) { op := &request.Operation{ - Name: opUpdateRecoveryPointLifecycle, + Name: opStartReportJob, HTTPMethod: "POST", - HTTPPath: "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}", + HTTPPath: "/audit/report-jobs/{reportPlanName}", } if input == nil { - input = &UpdateRecoveryPointLifecycleInput{} + input = &StartReportJobInput{} } - output = &UpdateRecoveryPointLifecycleOutput{} + output = &StartReportJobOutput{} req = c.newRequest(op, input, output) return } -// UpdateRecoveryPointLifecycle API operation for AWS Backup. -// -// Sets the transition lifecycle of a recovery point. -// -// The lifecycle defines when a protected resource is transitioned to cold storage -// and when it expires. Backup transitions and expires backups automatically -// according to the lifecycle that you define. -// -// Backups transitioned to cold storage must be stored in cold storage for a -// minimum of 90 days. Therefore, the “retention” setting must be 90 days -// greater than the “transition to cold after days” setting. The “transition -// to cold after days” setting cannot be changed after a backup has been transitioned -// to cold. -// -// Resource types that are able to be transitioned to cold storage are listed -// in the "Lifecycle to cold storage" section of the Feature availability by -// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) -// table. Backup ignores this expression for other resource types. +// StartReportJob API operation for AWS Backup. // -// This operation does not support continuous backups. +// Starts an on-demand report job for the specified report plan. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateRecoveryPointLifecycle for usage and error information. +// API operation StartReportJob for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// A resource that is required for the action doesn't exist. -// // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// - InvalidRequestException -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. // // - MissingParameterValueException // Indicates that a required parameter is missing. // -// - ServiceUnavailableException -// The request failed due to a temporary failure of the server. +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycle -func (c *Backup) UpdateRecoveryPointLifecycle(input *UpdateRecoveryPointLifecycleInput) (*UpdateRecoveryPointLifecycleOutput, error) { - req, out := c.UpdateRecoveryPointLifecycleRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartReportJob +func (c *Backup) StartReportJob(input *StartReportJobInput) (*StartReportJobOutput, error) { + req, out := c.StartReportJobRequest(input) return out, req.Send() } -// UpdateRecoveryPointLifecycleWithContext is the same as UpdateRecoveryPointLifecycle with the addition of +// StartReportJobWithContext is the same as StartReportJob with the addition of // the ability to pass a context and additional request options. // -// See UpdateRecoveryPointLifecycle for details on how to use this API operation. +// See StartReportJob 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 *Backup) UpdateRecoveryPointLifecycleWithContext(ctx aws.Context, input *UpdateRecoveryPointLifecycleInput, opts ...request.Option) (*UpdateRecoveryPointLifecycleOutput, error) { - req, out := c.UpdateRecoveryPointLifecycleRequest(input) +func (c *Backup) StartReportJobWithContext(ctx aws.Context, input *StartReportJobInput, opts ...request.Option) (*StartReportJobOutput, error) { + req, out := c.StartReportJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateRegionSettings = "UpdateRegionSettings" +const opStartRestoreJob = "StartRestoreJob" -// UpdateRegionSettingsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateRegionSettings operation. The "output" return +// StartRestoreJobRequest generates a "aws/request.Request" representing the +// client's request for the StartRestoreJob 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 UpdateRegionSettings for more information on using the UpdateRegionSettings +// See StartRestoreJob for more information on using the StartRestoreJob // 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 UpdateRegionSettingsRequest method. -// req, resp := client.UpdateRegionSettingsRequest(params) +// // Example sending a request using the StartRestoreJobRequest method. +// req, resp := client.StartRestoreJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRegionSettings -func (c *Backup) UpdateRegionSettingsRequest(input *UpdateRegionSettingsInput) (req *request.Request, output *UpdateRegionSettingsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJob +func (c *Backup) StartRestoreJobRequest(input *StartRestoreJobInput) (req *request.Request, output *StartRestoreJobOutput) { op := &request.Operation{ - Name: opUpdateRegionSettings, + Name: opStartRestoreJob, HTTPMethod: "PUT", - HTTPPath: "/account-settings", + HTTPPath: "/restore-jobs", } if input == nil { - input = &UpdateRegionSettingsInput{} + input = &StartRestoreJobInput{} } - output = &UpdateRegionSettingsOutput{} + output = &StartRestoreJobOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateRegionSettings API operation for AWS Backup. +// StartRestoreJob API operation for AWS Backup. // -// Updates the current service opt-in settings for the Region. If service-opt-in -// is enabled for a service, Backup tries to protect that service's resources -// in this Region, when the resource is included in an on-demand backup or scheduled -// backup plan. Otherwise, Backup does not try to protect that service's resources -// in this Region. Use the DescribeRegionSettings API to determine the resource -// types that are supported. +// Recovers the saved resource identified by an Amazon Resource Name (ARN). // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateRegionSettings for usage and error information. +// API operation StartRestoreJob for usage and error information. // // Returned Error Types: // -// - ServiceUnavailableException -// The request failed due to a temporary failure of the server. -// -// - MissingParameterValueException -// Indicates that a required parameter is missing. +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. // // - InvalidParameterValueException // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRegionSettings -func (c *Backup) UpdateRegionSettings(input *UpdateRegionSettingsInput) (*UpdateRegionSettingsOutput, error) { - req, out := c.UpdateRegionSettingsRequest(input) +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StartRestoreJob +func (c *Backup) StartRestoreJob(input *StartRestoreJobInput) (*StartRestoreJobOutput, error) { + req, out := c.StartRestoreJobRequest(input) return out, req.Send() } -// UpdateRegionSettingsWithContext is the same as UpdateRegionSettings with the addition of +// StartRestoreJobWithContext is the same as StartRestoreJob with the addition of // the ability to pass a context and additional request options. // -// See UpdateRegionSettings for details on how to use this API operation. +// See StartRestoreJob 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 *Backup) UpdateRegionSettingsWithContext(ctx aws.Context, input *UpdateRegionSettingsInput, opts ...request.Option) (*UpdateRegionSettingsOutput, error) { - req, out := c.UpdateRegionSettingsRequest(input) +func (c *Backup) StartRestoreJobWithContext(ctx aws.Context, input *StartRestoreJobInput, opts ...request.Option) (*StartRestoreJobOutput, error) { + req, out := c.StartRestoreJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateReportPlan = "UpdateReportPlan" +const opStopBackupJob = "StopBackupJob" -// UpdateReportPlanRequest generates a "aws/request.Request" representing the -// client's request for the UpdateReportPlan operation. The "output" return +// StopBackupJobRequest generates a "aws/request.Request" representing the +// client's request for the StopBackupJob 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 UpdateReportPlan for more information on using the UpdateReportPlan +// See StopBackupJob for more information on using the StopBackupJob // 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 UpdateReportPlanRequest method. -// req, resp := client.UpdateReportPlanRequest(params) +// // Example sending a request using the StopBackupJobRequest method. +// req, resp := client.StopBackupJobRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlan -func (c *Backup) UpdateReportPlanRequest(input *UpdateReportPlanInput) (req *request.Request, output *UpdateReportPlanOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJob +func (c *Backup) StopBackupJobRequest(input *StopBackupJobInput) (req *request.Request, output *StopBackupJobOutput) { op := &request.Operation{ - Name: opUpdateReportPlan, - HTTPMethod: "PUT", - HTTPPath: "/audit/report-plans/{reportPlanName}", + Name: opStopBackupJob, + HTTPMethod: "POST", + HTTPPath: "/backup-jobs/{backupJobId}", } if input == nil { - input = &UpdateReportPlanInput{} + input = &StopBackupJobInput{} } - output = &UpdateReportPlanOutput{} + output = &StopBackupJobOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateReportPlan API operation for AWS Backup. +// StopBackupJob API operation for AWS Backup. // -// Updates an existing report plan identified by its ReportPlanName with the -// input document in JSON format. +// Attempts to cancel a job to create a one-time backup of a resource. +// +// This action is not supported for the following services: Amazon FSx for Windows +// File Server, Amazon FSx for Lustre, FSx for ONTAP , Amazon FSx for OpenZFS, +// Amazon DocumentDB (with MongoDB compatibility), Amazon RDS, Amazon Aurora, +// and Amazon Neptune. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Backup's -// API operation UpdateReportPlan for usage and error information. +// API operation StopBackupJob for usage and error information. // // Returned Error Types: // +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// // - ResourceNotFoundException // A resource that is required for the action doesn't exist. // @@ -8259,222 +8760,3815 @@ func (c *Backup) UpdateReportPlanRequest(input *UpdateReportPlanInput) (req *req // Indicates that something is wrong with a parameter's value. For example, // the value is out of range. // +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// // - ServiceUnavailableException // The request failed due to a temporary failure of the server. // -// - MissingParameterValueException -// Indicates that a required parameter is missing. -// -// - ConflictException -// Backup can't perform the action that you requested until it finishes performing -// a previous action. Try again later. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlan -func (c *Backup) UpdateReportPlan(input *UpdateReportPlanInput) (*UpdateReportPlanOutput, error) { - req, out := c.UpdateReportPlanRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/StopBackupJob +func (c *Backup) StopBackupJob(input *StopBackupJobInput) (*StopBackupJobOutput, error) { + req, out := c.StopBackupJobRequest(input) return out, req.Send() } -// UpdateReportPlanWithContext is the same as UpdateReportPlan with the addition of +// StopBackupJobWithContext is the same as StopBackupJob with the addition of // the ability to pass a context and additional request options. // -// See UpdateReportPlan for details on how to use this API operation. +// See StopBackupJob 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 *Backup) UpdateReportPlanWithContext(ctx aws.Context, input *UpdateReportPlanInput, opts ...request.Option) (*UpdateReportPlanOutput, error) { - req, out := c.UpdateReportPlanRequest(input) +func (c *Backup) StopBackupJobWithContext(ctx aws.Context, input *StopBackupJobInput, opts ...request.Option) (*StopBackupJobOutput, error) { + req, out := c.StopBackupJobRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// A list of backup options for each resource type. -type AdvancedBackupSetting struct { - _ struct{} `type:"structure"` - - // Specifies the backup option for a selected resource. This option is only - // available for Windows VSS backup jobs. - // - // Valid values: - // - // Set to "WindowsVSS":"enabled" to enable the WindowsVSS backup option and - // create a Windows VSS backup. - // - // Set to "WindowsVSS":"disabled" to create a regular backup. The WindowsVSS - // option is not enabled by default. - // - // If you specify an invalid option, you get an InvalidParameterValueException - // exception. - // - // For more information about Windows VSS backups, see Creating a VSS-Enabled - // Windows Backup (https://docs.aws.amazon.com/aws-backup/latest/devguide/windows-backups.html). - BackupOptions map[string]*string `type:"map"` - - // Specifies an object containing resource type and backup options. The only - // supported resource type is Amazon EC2 instances with Windows Volume Shadow - // Copy Service (VSS). For a CloudFormation example, see the sample CloudFormation - // template to enable Windows VSS (https://docs.aws.amazon.com/aws-backup/latest/devguide/integrate-cloudformation-with-aws-backup.html) - // in the Backup User Guide. - // - // Valid values: EC2. - ResourceType *string `type:"string"` -} +const opTagResource = "TagResource" -// String returns the string representation. +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. // -// 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 AdvancedBackupSetting) 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 AdvancedBackupSetting) GoString() string { - return s.String() -} - -// SetBackupOptions sets the BackupOptions field's value. -func (s *AdvancedBackupSetting) SetBackupOptions(v map[string]*string) *AdvancedBackupSetting { - s.BackupOptions = v - return s -} - -// SetResourceType sets the ResourceType field's value. -func (s *AdvancedBackupSetting) SetResourceType(v string) *AdvancedBackupSetting { - s.ResourceType = &v - return s -} - -// The required resource already exists. -type AlreadyExistsException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Arn *string `type:"string"` - - Code_ *string `locationName:"Code" type:"string"` - - Context *string `type:"string"` - - CreatorRequestId *string `type:"string"` - - Message_ *string `locationName:"Message" type:"string"` - - Type *string `type:"string"` -} - -// String returns the string representation. +// See TagResource for more information on using the TagResource +// API call, and error handling. // -// 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 AlreadyExistsException) String() string { - return awsutil.Prettify(s) -} - -// GoString returns the string representation. +// 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. // -// 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 AlreadyExistsException) GoString() string { - return s.String() -} - -func newErrorAlreadyExistsException(v protocol.ResponseMetadata) error { - return &AlreadyExistsException{ - RespMetadata: v, +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/TagResource +func (c *Backup) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", } -} - -// Code returns the exception type name. -func (s *AlreadyExistsException) Code() string { - return "AlreadyExistsException" -} -// Message returns the exception's message. -func (s *AlreadyExistsException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if input == nil { + input = &TagResourceInput{} } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AlreadyExistsException) OrigErr() error { - return nil -} - -func (s *AlreadyExistsException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *AlreadyExistsException) StatusCode() int { - return s.RespMetadata.StatusCode -} -// RequestID returns the service's response RequestID for request. -func (s *AlreadyExistsException) RequestID() string { - return s.RespMetadata.RequestID + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return } -// This is a summary of jobs created or running within the most recent 30 days. +// TagResource API operation for AWS Backup. // -// The returned summary may contain the following: Region, Account, State, RestourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. -type BackupJobSummary struct { +// Assigns a set of key-value pairs to a recovery point, backup plan, or backup +// vault identified by an Amazon Resource Name (ARN). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/TagResource +func (c *Backup) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UntagResource +func (c *Backup) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/untag/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Backup. +// +// Removes a set of key-value pairs from a recovery point, backup plan, or backup +// vault identified by an Amazon Resource Name (ARN) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UntagResource +func (c *Backup) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Backup) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateBackupPlan = "UpdateBackupPlan" + +// UpdateBackupPlanRequest generates a "aws/request.Request" representing the +// client's request for the UpdateBackupPlan 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 UpdateBackupPlan for more information on using the UpdateBackupPlan +// 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 UpdateBackupPlanRequest method. +// req, resp := client.UpdateBackupPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlan +func (c *Backup) UpdateBackupPlanRequest(input *UpdateBackupPlanInput) (req *request.Request, output *UpdateBackupPlanOutput) { + op := &request.Operation{ + Name: opUpdateBackupPlan, + HTTPMethod: "POST", + HTTPPath: "/backup/plans/{backupPlanId}", + } + + if input == nil { + input = &UpdateBackupPlanInput{} + } + + output = &UpdateBackupPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateBackupPlan API operation for AWS Backup. +// +// Updates an existing backup plan identified by its backupPlanId with the input +// document in JSON format. The new version is uniquely identified by a VersionId. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateBackupPlan for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateBackupPlan +func (c *Backup) UpdateBackupPlan(input *UpdateBackupPlanInput) (*UpdateBackupPlanOutput, error) { + req, out := c.UpdateBackupPlanRequest(input) + return out, req.Send() +} + +// UpdateBackupPlanWithContext is the same as UpdateBackupPlan with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateBackupPlan 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 *Backup) UpdateBackupPlanWithContext(ctx aws.Context, input *UpdateBackupPlanInput, opts ...request.Option) (*UpdateBackupPlanOutput, error) { + req, out := c.UpdateBackupPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateFramework = "UpdateFramework" + +// UpdateFrameworkRequest generates a "aws/request.Request" representing the +// client's request for the UpdateFramework 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 UpdateFramework for more information on using the UpdateFramework +// 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 UpdateFrameworkRequest method. +// req, resp := client.UpdateFrameworkRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFramework +func (c *Backup) UpdateFrameworkRequest(input *UpdateFrameworkInput) (req *request.Request, output *UpdateFrameworkOutput) { + op := &request.Operation{ + Name: opUpdateFramework, + HTTPMethod: "PUT", + HTTPPath: "/audit/frameworks/{frameworkName}", + } + + if input == nil { + input = &UpdateFrameworkInput{} + } + + output = &UpdateFrameworkOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateFramework API operation for AWS Backup. +// +// Updates an existing framework identified by its FrameworkName with the input +// document in JSON format. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateFramework for usage and error information. +// +// Returned Error Types: +// +// - AlreadyExistsException +// The required resource already exists. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - LimitExceededException +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateFramework +func (c *Backup) UpdateFramework(input *UpdateFrameworkInput) (*UpdateFrameworkOutput, error) { + req, out := c.UpdateFrameworkRequest(input) + return out, req.Send() +} + +// UpdateFrameworkWithContext is the same as UpdateFramework with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateFramework 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 *Backup) UpdateFrameworkWithContext(ctx aws.Context, input *UpdateFrameworkInput, opts ...request.Option) (*UpdateFrameworkOutput, error) { + req, out := c.UpdateFrameworkRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateGlobalSettings = "UpdateGlobalSettings" + +// UpdateGlobalSettingsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateGlobalSettings 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 UpdateGlobalSettings for more information on using the UpdateGlobalSettings +// 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 UpdateGlobalSettingsRequest method. +// req, resp := client.UpdateGlobalSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettings +func (c *Backup) UpdateGlobalSettingsRequest(input *UpdateGlobalSettingsInput) (req *request.Request, output *UpdateGlobalSettingsOutput) { + op := &request.Operation{ + Name: opUpdateGlobalSettings, + HTTPMethod: "PUT", + HTTPPath: "/global-settings", + } + + if input == nil { + input = &UpdateGlobalSettingsInput{} + } + + output = &UpdateGlobalSettingsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateGlobalSettings API operation for AWS Backup. +// +// Updates whether the Amazon Web Services account is opted in to cross-account +// backup. Returns an error if the account is not an Organizations management +// account. Use the DescribeGlobalSettings API to determine the current settings. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateGlobalSettings for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateGlobalSettings +func (c *Backup) UpdateGlobalSettings(input *UpdateGlobalSettingsInput) (*UpdateGlobalSettingsOutput, error) { + req, out := c.UpdateGlobalSettingsRequest(input) + return out, req.Send() +} + +// UpdateGlobalSettingsWithContext is the same as UpdateGlobalSettings with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateGlobalSettings 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 *Backup) UpdateGlobalSettingsWithContext(ctx aws.Context, input *UpdateGlobalSettingsInput, opts ...request.Option) (*UpdateGlobalSettingsOutput, error) { + req, out := c.UpdateGlobalSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRecoveryPointLifecycle = "UpdateRecoveryPointLifecycle" + +// UpdateRecoveryPointLifecycleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRecoveryPointLifecycle 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 UpdateRecoveryPointLifecycle for more information on using the UpdateRecoveryPointLifecycle +// 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 UpdateRecoveryPointLifecycleRequest method. +// req, resp := client.UpdateRecoveryPointLifecycleRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycle +func (c *Backup) UpdateRecoveryPointLifecycleRequest(input *UpdateRecoveryPointLifecycleInput) (req *request.Request, output *UpdateRecoveryPointLifecycleOutput) { + op := &request.Operation{ + Name: opUpdateRecoveryPointLifecycle, + HTTPMethod: "POST", + HTTPPath: "/backup-vaults/{backupVaultName}/recovery-points/{recoveryPointArn}", + } + + if input == nil { + input = &UpdateRecoveryPointLifecycleInput{} + } + + output = &UpdateRecoveryPointLifecycleOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRecoveryPointLifecycle API operation for AWS Backup. +// +// Sets the transition lifecycle of a recovery point. +// +// The lifecycle defines when a protected resource is transitioned to cold storage +// and when it expires. Backup transitions and expires backups automatically +// according to the lifecycle that you define. +// +// Backups transitioned to cold storage must be stored in cold storage for a +// minimum of 90 days. Therefore, the “retention” setting must be 90 days +// greater than the “transition to cold after days” setting. The “transition +// to cold after days” setting cannot be changed after a backup has been transitioned +// to cold. +// +// Resource types that are able to be transitioned to cold storage are listed +// in the "Lifecycle to cold storage" section of the Feature availability by +// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) +// table. Backup ignores this expression for other resource types. +// +// This operation does not support continuous backups. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRecoveryPointLifecycle for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - InvalidRequestException +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRecoveryPointLifecycle +func (c *Backup) UpdateRecoveryPointLifecycle(input *UpdateRecoveryPointLifecycleInput) (*UpdateRecoveryPointLifecycleOutput, error) { + req, out := c.UpdateRecoveryPointLifecycleRequest(input) + return out, req.Send() +} + +// UpdateRecoveryPointLifecycleWithContext is the same as UpdateRecoveryPointLifecycle with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRecoveryPointLifecycle 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 *Backup) UpdateRecoveryPointLifecycleWithContext(ctx aws.Context, input *UpdateRecoveryPointLifecycleInput, opts ...request.Option) (*UpdateRecoveryPointLifecycleOutput, error) { + req, out := c.UpdateRecoveryPointLifecycleRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRegionSettings = "UpdateRegionSettings" + +// UpdateRegionSettingsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRegionSettings 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 UpdateRegionSettings for more information on using the UpdateRegionSettings +// 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 UpdateRegionSettingsRequest method. +// req, resp := client.UpdateRegionSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRegionSettings +func (c *Backup) UpdateRegionSettingsRequest(input *UpdateRegionSettingsInput) (req *request.Request, output *UpdateRegionSettingsOutput) { + op := &request.Operation{ + Name: opUpdateRegionSettings, + HTTPMethod: "PUT", + HTTPPath: "/account-settings", + } + + if input == nil { + input = &UpdateRegionSettingsInput{} + } + + output = &UpdateRegionSettingsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateRegionSettings API operation for AWS Backup. +// +// Updates the current service opt-in settings for the Region. If service-opt-in +// is enabled for a service, Backup tries to protect that service's resources +// in this Region, when the resource is included in an on-demand backup or scheduled +// backup plan. Otherwise, Backup does not try to protect that service's resources +// in this Region. Use the DescribeRegionSettings API to determine the resource +// types that are supported. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRegionSettings for usage and error information. +// +// Returned Error Types: +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRegionSettings +func (c *Backup) UpdateRegionSettings(input *UpdateRegionSettingsInput) (*UpdateRegionSettingsOutput, error) { + req, out := c.UpdateRegionSettingsRequest(input) + return out, req.Send() +} + +// UpdateRegionSettingsWithContext is the same as UpdateRegionSettings with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRegionSettings 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 *Backup) UpdateRegionSettingsWithContext(ctx aws.Context, input *UpdateRegionSettingsInput, opts ...request.Option) (*UpdateRegionSettingsOutput, error) { + req, out := c.UpdateRegionSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateReportPlan = "UpdateReportPlan" + +// UpdateReportPlanRequest generates a "aws/request.Request" representing the +// client's request for the UpdateReportPlan 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 UpdateReportPlan for more information on using the UpdateReportPlan +// 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 UpdateReportPlanRequest method. +// req, resp := client.UpdateReportPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlan +func (c *Backup) UpdateReportPlanRequest(input *UpdateReportPlanInput) (req *request.Request, output *UpdateReportPlanOutput) { + op := &request.Operation{ + Name: opUpdateReportPlan, + HTTPMethod: "PUT", + HTTPPath: "/audit/report-plans/{reportPlanName}", + } + + if input == nil { + input = &UpdateReportPlanInput{} + } + + output = &UpdateReportPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateReportPlan API operation for AWS Backup. +// +// Updates an existing report plan identified by its ReportPlanName with the +// input document in JSON format. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateReportPlan for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateReportPlan +func (c *Backup) UpdateReportPlan(input *UpdateReportPlanInput) (*UpdateReportPlanOutput, error) { + req, out := c.UpdateReportPlanRequest(input) + return out, req.Send() +} + +// UpdateReportPlanWithContext is the same as UpdateReportPlan with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateReportPlan 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 *Backup) UpdateReportPlanWithContext(ctx aws.Context, input *UpdateReportPlanInput, opts ...request.Option) (*UpdateReportPlanOutput, error) { + req, out := c.UpdateReportPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRestoreTestingPlan = "UpdateRestoreTestingPlan" + +// UpdateRestoreTestingPlanRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRestoreTestingPlan 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 UpdateRestoreTestingPlan for more information on using the UpdateRestoreTestingPlan +// 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 UpdateRestoreTestingPlanRequest method. +// req, resp := client.UpdateRestoreTestingPlanRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingPlan +func (c *Backup) UpdateRestoreTestingPlanRequest(input *UpdateRestoreTestingPlanInput) (req *request.Request, output *UpdateRestoreTestingPlanOutput) { + op := &request.Operation{ + Name: opUpdateRestoreTestingPlan, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}", + } + + if input == nil { + input = &UpdateRestoreTestingPlanInput{} + } + + output = &UpdateRestoreTestingPlanOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRestoreTestingPlan API operation for AWS Backup. +// +// This request will send changes to your specified restore testing plan. RestoreTestingPlanName +// cannot be updated after it is created. +// +// RecoveryPointSelection can contain: +// +// - Algorithm +// +// - ExcludeVaults +// +// - IncludeVaults +// +// - RecoveryPointTypes +// +// - SelectionWindowDays +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRestoreTestingPlan for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingPlan +func (c *Backup) UpdateRestoreTestingPlan(input *UpdateRestoreTestingPlanInput) (*UpdateRestoreTestingPlanOutput, error) { + req, out := c.UpdateRestoreTestingPlanRequest(input) + return out, req.Send() +} + +// UpdateRestoreTestingPlanWithContext is the same as UpdateRestoreTestingPlan with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRestoreTestingPlan 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 *Backup) UpdateRestoreTestingPlanWithContext(ctx aws.Context, input *UpdateRestoreTestingPlanInput, opts ...request.Option) (*UpdateRestoreTestingPlanOutput, error) { + req, out := c.UpdateRestoreTestingPlanRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateRestoreTestingSelection = "UpdateRestoreTestingSelection" + +// UpdateRestoreTestingSelectionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateRestoreTestingSelection 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 UpdateRestoreTestingSelection for more information on using the UpdateRestoreTestingSelection +// 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 UpdateRestoreTestingSelectionRequest method. +// req, resp := client.UpdateRestoreTestingSelectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingSelection +func (c *Backup) UpdateRestoreTestingSelectionRequest(input *UpdateRestoreTestingSelectionInput) (req *request.Request, output *UpdateRestoreTestingSelectionOutput) { + op := &request.Operation{ + Name: opUpdateRestoreTestingSelection, + HTTPMethod: "PUT", + HTTPPath: "/restore-testing/plans/{RestoreTestingPlanName}/selections/{RestoreTestingSelectionName}", + } + + if input == nil { + input = &UpdateRestoreTestingSelectionInput{} + } + + output = &UpdateRestoreTestingSelectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateRestoreTestingSelection API operation for AWS Backup. +// +// Most elements except the RestoreTestingSelectionName can be updated with +// this request. +// +// RestoreTestingSelection can use either protected resource ARNs or conditions, +// but not both. That is, if your selection has ProtectedResourceArns, requesting +// an update with the parameter ProtectedResourceConditions will be unsuccessful. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Backup's +// API operation UpdateRestoreTestingSelection for usage and error information. +// +// Returned Error Types: +// +// - ConflictException +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +// +// - InvalidParameterValueException +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +// +// - MissingParameterValueException +// Indicates that a required parameter is missing. +// +// - ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// - ServiceUnavailableException +// The request failed due to a temporary failure of the server. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/backup-2018-11-15/UpdateRestoreTestingSelection +func (c *Backup) UpdateRestoreTestingSelection(input *UpdateRestoreTestingSelectionInput) (*UpdateRestoreTestingSelectionOutput, error) { + req, out := c.UpdateRestoreTestingSelectionRequest(input) + return out, req.Send() +} + +// UpdateRestoreTestingSelectionWithContext is the same as UpdateRestoreTestingSelection with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateRestoreTestingSelection 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 *Backup) UpdateRestoreTestingSelectionWithContext(ctx aws.Context, input *UpdateRestoreTestingSelectionInput, opts ...request.Option) (*UpdateRestoreTestingSelectionOutput, error) { + req, out := c.UpdateRestoreTestingSelectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// A list of backup options for each resource type. +type AdvancedBackupSetting struct { + _ struct{} `type:"structure"` + + // Specifies the backup option for a selected resource. This option is only + // available for Windows VSS backup jobs. + // + // Valid values: + // + // Set to "WindowsVSS":"enabled" to enable the WindowsVSS backup option and + // create a Windows VSS backup. + // + // Set to "WindowsVSS":"disabled" to create a regular backup. The WindowsVSS + // option is not enabled by default. + // + // If you specify an invalid option, you get an InvalidParameterValueException + // exception. + // + // For more information about Windows VSS backups, see Creating a VSS-Enabled + // Windows Backup (https://docs.aws.amazon.com/aws-backup/latest/devguide/windows-backups.html). + BackupOptions map[string]*string `type:"map"` + + // Specifies an object containing resource type and backup options. The only + // supported resource type is Amazon EC2 instances with Windows Volume Shadow + // Copy Service (VSS). For a CloudFormation example, see the sample CloudFormation + // template to enable Windows VSS (https://docs.aws.amazon.com/aws-backup/latest/devguide/integrate-cloudformation-with-aws-backup.html) + // in the Backup User Guide. + // + // Valid values: EC2. + ResourceType *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 AdvancedBackupSetting) 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 AdvancedBackupSetting) GoString() string { + return s.String() +} + +// SetBackupOptions sets the BackupOptions field's value. +func (s *AdvancedBackupSetting) SetBackupOptions(v map[string]*string) *AdvancedBackupSetting { + s.BackupOptions = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *AdvancedBackupSetting) SetResourceType(v string) *AdvancedBackupSetting { + s.ResourceType = &v + return s +} + +// The required resource already exists. +type AlreadyExistsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Arn *string `type:"string"` + + Code_ *string `locationName:"Code" type:"string"` + + Context *string `type:"string"` + + CreatorRequestId *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` + + Type *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 AlreadyExistsException) 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 AlreadyExistsException) GoString() string { + return s.String() +} + +func newErrorAlreadyExistsException(v protocol.ResponseMetadata) error { + return &AlreadyExistsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AlreadyExistsException) Code() string { + return "AlreadyExistsException" +} + +// Message returns the exception's message. +func (s *AlreadyExistsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AlreadyExistsException) OrigErr() error { + return nil +} + +func (s *AlreadyExistsException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AlreadyExistsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AlreadyExistsException) RequestID() string { + return s.RespMetadata.RequestID +} + +// This is a summary of jobs created or running within the most recent 30 days. +// +// The returned summary may contain the following: Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type BackupJobSummary struct { + _ struct{} `type:"structure"` + + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` + + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` + + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` + + // This parameter is the job count for the specified message category. + // + // Example strings include AccessDenied, Success, and InvalidParameters. See + // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` + + // The Amazon Web Services Regions within the job summary. + Region *string `type:"string"` + + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types. + ResourceType *string `type:"string"` + + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` + + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"BackupJobStatus"` +} + +// 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 BackupJobSummary) 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 BackupJobSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *BackupJobSummary) SetAccountId(v string) *BackupJobSummary { + s.AccountId = &v + return s +} + +// SetCount sets the Count field's value. +func (s *BackupJobSummary) SetCount(v int64) *BackupJobSummary { + s.Count = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *BackupJobSummary) SetEndTime(v time.Time) *BackupJobSummary { + s.EndTime = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *BackupJobSummary) SetMessageCategory(v string) *BackupJobSummary { + s.MessageCategory = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *BackupJobSummary) SetRegion(v string) *BackupJobSummary { + s.Region = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *BackupJobSummary) SetResourceType(v string) *BackupJobSummary { + s.ResourceType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *BackupJobSummary) SetStartTime(v time.Time) *BackupJobSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *BackupJobSummary) SetState(v string) *BackupJobSummary { + s.State = &v + return s +} + +// Contains DeleteAt and MoveToColdStorageAt timestamps, which are used to specify +// a lifecycle for a recovery point. +// +// The lifecycle defines when a protected resource is transitioned to cold storage +// and when it expires. Backup transitions and expires backups automatically +// according to the lifecycle that you define. +// +// Backups transitioned to cold storage must be stored in cold storage for a +// minimum of 90 days. Therefore, the “retention” setting must be 90 days +// greater than the “transition to cold after days” setting. The “transition +// to cold after days” setting cannot be changed after a backup has been transitioned +// to cold. +// +// Resource types that are able to be transitioned to cold storage are listed +// in the "Lifecycle to cold storage" section of the Feature availability by +// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) +// table. Backup ignores this expression for other resource types. +type CalculatedLifecycle struct { + _ struct{} `type:"structure"` + + // A timestamp that specifies when to delete a recovery point. + DeleteAt *time.Time `type:"timestamp"` + + // A timestamp that specifies when to transition a recovery point to cold storage. + MoveToColdStorageAt *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CalculatedLifecycle) 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 CalculatedLifecycle) GoString() string { + return s.String() +} + +// SetDeleteAt sets the DeleteAt field's value. +func (s *CalculatedLifecycle) SetDeleteAt(v time.Time) *CalculatedLifecycle { + s.DeleteAt = &v + return s +} + +// SetMoveToColdStorageAt sets the MoveToColdStorageAt field's value. +func (s *CalculatedLifecycle) SetMoveToColdStorageAt(v time.Time) *CalculatedLifecycle { + s.MoveToColdStorageAt = &v + return s +} + +type CancelLegalHoldInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // String describing the reason for removing the legal hold. + // + // CancelDescription is a required field + CancelDescription *string `location:"querystring" locationName:"cancelDescription" type:"string" required:"true"` + + // Legal hold ID required to remove the specified legal hold on a recovery point. + // + // LegalHoldId is a required field + LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` + + // The integer amount in days specifying amount of days after this API operation + // to remove legal hold. + RetainRecordInDays *int64 `location:"querystring" locationName:"retainRecordInDays" type:"long"` +} + +// 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 CancelLegalHoldInput) 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 CancelLegalHoldInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CancelLegalHoldInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CancelLegalHoldInput"} + if s.CancelDescription == nil { + invalidParams.Add(request.NewErrParamRequired("CancelDescription")) + } + if s.LegalHoldId == nil { + invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) + } + if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCancelDescription sets the CancelDescription field's value. +func (s *CancelLegalHoldInput) SetCancelDescription(v string) *CancelLegalHoldInput { + s.CancelDescription = &v + return s +} + +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *CancelLegalHoldInput) SetLegalHoldId(v string) *CancelLegalHoldInput { + s.LegalHoldId = &v + return s +} + +// SetRetainRecordInDays sets the RetainRecordInDays field's value. +func (s *CancelLegalHoldInput) SetRetainRecordInDays(v int64) *CancelLegalHoldInput { + s.RetainRecordInDays = &v + return s +} + +type CancelLegalHoldOutput 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 CancelLegalHoldOutput) 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 CancelLegalHoldOutput) GoString() string { + return s.String() +} + +// Contains an array of triplets made up of a condition type (such as StringEquals), +// a key, and a value. Used to filter resources using their tags and assign +// them to a backup plan. Case sensitive. +type Condition struct { + _ struct{} `type:"structure"` + + // The key in a key-value pair. For example, in the tag Department: Accounting, + // Department is the key. + // + // ConditionKey is a required field + ConditionKey *string `type:"string" required:"true"` + + // An operation applied to a key-value pair used to assign resources to your + // backup plan. Condition only supports StringEquals. For more flexible assignment + // options, including StringLike and the ability to exclude resources from your + // backup plan, use Conditions (with an "s" on the end) for your BackupSelection + // (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BackupSelection.html). + // + // ConditionType is a required field + ConditionType *string `type:"string" required:"true" enum:"ConditionType"` + + // The value in a key-value pair. For example, in the tag Department: Accounting, + // Accounting is the value. + // + // ConditionValue is a required field + ConditionValue *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Condition) 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 Condition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Condition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Condition"} + if s.ConditionKey == nil { + invalidParams.Add(request.NewErrParamRequired("ConditionKey")) + } + if s.ConditionType == nil { + invalidParams.Add(request.NewErrParamRequired("ConditionType")) + } + if s.ConditionValue == nil { + invalidParams.Add(request.NewErrParamRequired("ConditionValue")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConditionKey sets the ConditionKey field's value. +func (s *Condition) SetConditionKey(v string) *Condition { + s.ConditionKey = &v + return s +} + +// SetConditionType sets the ConditionType field's value. +func (s *Condition) SetConditionType(v string) *Condition { + s.ConditionType = &v + return s +} + +// SetConditionValue sets the ConditionValue field's value. +func (s *Condition) SetConditionValue(v string) *Condition { + s.ConditionValue = &v + return s +} + +// Includes information about tags you define to assign tagged resources to +// a backup plan. +type ConditionParameter struct { + _ struct{} `type:"structure"` + + // The key in a key-value pair. For example, in the tag Department: Accounting, + // Department is the key. + ConditionKey *string `type:"string"` + + // The value in a key-value pair. For example, in the tag Department: Accounting, + // Accounting is the value. + ConditionValue *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 ConditionParameter) 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 ConditionParameter) GoString() string { + return s.String() +} + +// SetConditionKey sets the ConditionKey field's value. +func (s *ConditionParameter) SetConditionKey(v string) *ConditionParameter { + s.ConditionKey = &v + return s +} + +// SetConditionValue sets the ConditionValue field's value. +func (s *ConditionParameter) SetConditionValue(v string) *ConditionParameter { + s.ConditionValue = &v + return s +} + +// Contains information about which resources to include or exclude from a backup +// plan using their tags. Conditions are case sensitive. +type Conditions struct { + _ struct{} `type:"structure"` + + // Filters the values of your tagged resources for only those resources that + // you tagged with the same value. Also called "exact matching." + StringEquals []*ConditionParameter `type:"list"` + + // Filters the values of your tagged resources for matching tag values with + // the use of a wildcard character (*) anywhere in the string. For example, + // "prod*" or "*rod*" matches the tag value "production". + StringLike []*ConditionParameter `type:"list"` + + // Filters the values of your tagged resources for only those resources that + // you tagged that do not have the same value. Also called "negated matching." + StringNotEquals []*ConditionParameter `type:"list"` + + // Filters the values of your tagged resources for non-matching tag values with + // the use of a wildcard character (*) anywhere in the string. + StringNotLike []*ConditionParameter `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 Conditions) 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 Conditions) GoString() string { + return s.String() +} + +// SetStringEquals sets the StringEquals field's value. +func (s *Conditions) SetStringEquals(v []*ConditionParameter) *Conditions { + s.StringEquals = v + return s +} + +// SetStringLike sets the StringLike field's value. +func (s *Conditions) SetStringLike(v []*ConditionParameter) *Conditions { + s.StringLike = v + return s +} + +// SetStringNotEquals sets the StringNotEquals field's value. +func (s *Conditions) SetStringNotEquals(v []*ConditionParameter) *Conditions { + s.StringNotEquals = v + return s +} + +// SetStringNotLike sets the StringNotLike field's value. +func (s *Conditions) SetStringNotLike(v []*ConditionParameter) *Conditions { + s.StringNotLike = v + return s +} + +// Backup can't perform the action that you requested until it finishes performing +// a previous action. Try again later. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Code_ *string `locationName:"Code" type:"string"` + + Context *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` + + Type *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 ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A list of parameters for a control. A control can have zero, one, or more +// than one parameter. An example of a control with two parameters is: "backup +// plan frequency is at least daily and the retention period is at least 1 year". +// The first parameter is daily. The second parameter is 1 year. +type ControlInputParameter struct { + _ struct{} `type:"structure"` + + // The name of a parameter, for example, BackupPlanFrequency. + ParameterName *string `type:"string"` + + // The value of parameter, for example, hourly. + ParameterValue *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 ControlInputParameter) 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 ControlInputParameter) GoString() string { + return s.String() +} + +// SetParameterName sets the ParameterName field's value. +func (s *ControlInputParameter) SetParameterName(v string) *ControlInputParameter { + s.ParameterName = &v + return s +} + +// SetParameterValue sets the ParameterValue field's value. +func (s *ControlInputParameter) SetParameterValue(v string) *ControlInputParameter { + s.ParameterValue = &v + return s +} + +// A framework consists of one or more controls. Each control has its own control +// scope. The control scope can include one or more resource types, a combination +// of a tag key and value, or a combination of one resource type and one resource +// ID. If no scope is specified, evaluations for the rule are triggered when +// any resource in your recording group changes in configuration. +// +// To set a control scope that includes all of a particular resource, leave +// the ControlScope empty or do not pass it when calling CreateFramework. +type ControlScope struct { + _ struct{} `type:"structure"` + + // The ID of the only Amazon Web Services resource that you want your control + // scope to contain. + ComplianceResourceIds []*string `min:"1" type:"list"` + + // Describes whether the control scope includes one or more types of resources, + // such as EFS or RDS. + ComplianceResourceTypes []*string `type:"list"` + + // The tag key-value pair applied to those Amazon Web Services resources that + // you want to trigger an evaluation for a rule. A maximum of one key-value + // pair can be provided. The tag value is optional, but it cannot be an empty + // string. The structure to assign a tag is: [{"Key":"string","Value":"string"}]. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ControlScope) 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 ControlScope) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ControlScope) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ControlScope"} + if s.ComplianceResourceIds != nil && len(s.ComplianceResourceIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceIds", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetComplianceResourceIds sets the ComplianceResourceIds field's value. +func (s *ControlScope) SetComplianceResourceIds(v []*string) *ControlScope { + s.ComplianceResourceIds = v + return s +} + +// SetComplianceResourceTypes sets the ComplianceResourceTypes field's value. +func (s *ControlScope) SetComplianceResourceTypes(v []*string) *ControlScope { + s.ComplianceResourceTypes = v + return s +} + +// SetTags sets the Tags field's value. +func (s *ControlScope) SetTags(v map[string]*string) *ControlScope { + s.Tags = v + return s +} + +// The details of the copy operation. +type CopyAction struct { + _ struct{} `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies the destination backup + // vault for the copied backup. For example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + // + // DestinationBackupVaultArn is a required field + DestinationBackupVaultArn *string `type:"string" required:"true"` + + // Contains an array of Transition objects specifying how long in days before + // a recovery point transitions to cold storage or is deleted. + // + // Backups transitioned to cold storage must be stored in cold storage for a + // minimum of 90 days. Therefore, on the console, the “retention” setting + // must be 90 days greater than the “transition to cold after days” setting. + // The “transition to cold after days” setting cannot be changed after a + // backup has been transitioned to cold. + // + // Resource types that are able to be transitioned to cold storage are listed + // in the "Lifecycle to cold storage" section of the Feature availability by + // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) + // table. Backup ignores this expression for other resource types. + Lifecycle *Lifecycle `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 CopyAction) 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 CopyAction) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyAction) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyAction"} + if s.DestinationBackupVaultArn == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationBackupVaultArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationBackupVaultArn sets the DestinationBackupVaultArn field's value. +func (s *CopyAction) SetDestinationBackupVaultArn(v string) *CopyAction { + s.DestinationBackupVaultArn = &v + return s +} + +// SetLifecycle sets the Lifecycle field's value. +func (s *CopyAction) SetLifecycle(v *Lifecycle) *CopyAction { + s.Lifecycle = v + return s +} + +// Contains detailed information about a copy job. +type CopyJob struct { + _ struct{} `type:"structure"` + + // The account ID that owns the copy job. + AccountId *string `type:"string"` + + // The size, in bytes, of a copy job. + BackupSizeInBytes *int64 `type:"long"` + + // This returns the statistics of the included child (nested) copy jobs. + ChildJobsInState map[string]*int64 `type:"map"` + + // The date and time a copy job is completed, in Unix format and Coordinated + // Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // This is the identifier of a resource within a composite group, such as nested + // (child) recovery point belonging to a composite (parent) stack. The ID is + // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) + // within a stack. + CompositeMemberIdentifier *string `type:"string"` + + // Uniquely identifies a copy job. + CopyJobId *string `type:"string"` + + // Contains information about the backup plan and rule that Backup used to initiate + // the recovery point backup. + CreatedBy *RecoveryPointCreator `type:"structure"` + + // The date and time a copy job is created, in Unix format and Coordinated Universal + // Time (UTC). The value of CreationDate is accurate to milliseconds. For example, + // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 + // AM. + CreationDate *time.Time `type:"timestamp"` + + // An Amazon Resource Name (ARN) that uniquely identifies a destination copy + // vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + DestinationBackupVaultArn *string `type:"string"` + + // An ARN that uniquely identifies a destination recovery point; for example, + // arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + DestinationRecoveryPointArn *string `type:"string"` + + // Specifies the IAM role ARN used to copy the target recovery point; for example, + // arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // This is a boolean value indicating this is a parent (composite) copy job. + IsParent *bool `type:"boolean"` + + // This parameter is the job count for the specified message category. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum + MessageCategory *string `type:"string"` + + // This is the number of child (nested) copy jobs. + NumberOfChildJobs *int64 `type:"long"` + + // This uniquely identifies a request to Backup to copy a resource. The return + // will be the parent (composite) job ID. + ParentJobId *string `type:"string"` + + // The Amazon Web Services resource to be copied; for example, an Amazon Elastic + // Block Store (Amazon EBS) volume or an Amazon Relational Database Service + // (Amazon RDS) database. + ResourceArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // The type of Amazon Web Services resource to be copied; for example, an Amazon + // Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a source copy vault; + // for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + SourceBackupVaultArn *string `type:"string"` + + // An ARN that uniquely identifies a source recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + SourceRecoveryPointArn *string `type:"string"` + + // The current state of a copy job. + State *string `type:"string" enum:"CopyJobState"` + + // A detailed message explaining the status of the job to copy a resource. + StatusMessage *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 CopyJob) 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 CopyJob) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *CopyJob) SetAccountId(v string) *CopyJob { + s.AccountId = &v + return s +} + +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *CopyJob) SetBackupSizeInBytes(v int64) *CopyJob { + s.BackupSizeInBytes = &v + return s +} + +// SetChildJobsInState sets the ChildJobsInState field's value. +func (s *CopyJob) SetChildJobsInState(v map[string]*int64) *CopyJob { + s.ChildJobsInState = v + return s +} + +// SetCompletionDate sets the CompletionDate field's value. +func (s *CopyJob) SetCompletionDate(v time.Time) *CopyJob { + s.CompletionDate = &v + return s +} + +// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. +func (s *CopyJob) SetCompositeMemberIdentifier(v string) *CopyJob { + s.CompositeMemberIdentifier = &v + return s +} + +// SetCopyJobId sets the CopyJobId field's value. +func (s *CopyJob) SetCopyJobId(v string) *CopyJob { + s.CopyJobId = &v + return s +} + +// SetCreatedBy sets the CreatedBy field's value. +func (s *CopyJob) SetCreatedBy(v *RecoveryPointCreator) *CopyJob { + s.CreatedBy = v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CopyJob) SetCreationDate(v time.Time) *CopyJob { + s.CreationDate = &v + return s +} + +// SetDestinationBackupVaultArn sets the DestinationBackupVaultArn field's value. +func (s *CopyJob) SetDestinationBackupVaultArn(v string) *CopyJob { + s.DestinationBackupVaultArn = &v + return s +} + +// SetDestinationRecoveryPointArn sets the DestinationRecoveryPointArn field's value. +func (s *CopyJob) SetDestinationRecoveryPointArn(v string) *CopyJob { + s.DestinationRecoveryPointArn = &v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *CopyJob) SetIamRoleArn(v string) *CopyJob { + s.IamRoleArn = &v + return s +} + +// SetIsParent sets the IsParent field's value. +func (s *CopyJob) SetIsParent(v bool) *CopyJob { + s.IsParent = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *CopyJob) SetMessageCategory(v string) *CopyJob { + s.MessageCategory = &v + return s +} + +// SetNumberOfChildJobs sets the NumberOfChildJobs field's value. +func (s *CopyJob) SetNumberOfChildJobs(v int64) *CopyJob { + s.NumberOfChildJobs = &v + return s +} + +// SetParentJobId sets the ParentJobId field's value. +func (s *CopyJob) SetParentJobId(v string) *CopyJob { + s.ParentJobId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *CopyJob) SetResourceArn(v string) *CopyJob { + s.ResourceArn = &v + return s +} + +// SetResourceName sets the ResourceName field's value. +func (s *CopyJob) SetResourceName(v string) *CopyJob { + s.ResourceName = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *CopyJob) SetResourceType(v string) *CopyJob { + s.ResourceType = &v + return s +} + +// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. +func (s *CopyJob) SetSourceBackupVaultArn(v string) *CopyJob { + s.SourceBackupVaultArn = &v + return s +} + +// SetSourceRecoveryPointArn sets the SourceRecoveryPointArn field's value. +func (s *CopyJob) SetSourceRecoveryPointArn(v string) *CopyJob { + s.SourceRecoveryPointArn = &v + return s +} + +// SetState sets the State field's value. +func (s *CopyJob) SetState(v string) *CopyJob { + s.State = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *CopyJob) SetStatusMessage(v string) *CopyJob { + s.StatusMessage = &v + return s +} + +// This is a summary of copy jobs created or running within the most recent +// 30 days. +// +// The returned summary may contain the following: Region, Account, State, RestourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type CopyJobSummary struct { + _ struct{} `type:"structure"` + + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` + + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` + + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` + + // This parameter is the job count for the specified message category. + // + // Example strings include AccessDenied, Success, and InvalidParameters. See + // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` + + // This is the Amazon Web Services Regions within the job summary. + Region *string `type:"string"` + + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types + ResourceType *string `type:"string"` + + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` + + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"CopyJobStatus"` +} + +// 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 CopyJobSummary) 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 CopyJobSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *CopyJobSummary) SetAccountId(v string) *CopyJobSummary { + s.AccountId = &v + return s +} + +// SetCount sets the Count field's value. +func (s *CopyJobSummary) SetCount(v int64) *CopyJobSummary { + s.Count = &v + return s +} + +// SetEndTime sets the EndTime field's value. +func (s *CopyJobSummary) SetEndTime(v time.Time) *CopyJobSummary { + s.EndTime = &v + return s +} + +// SetMessageCategory sets the MessageCategory field's value. +func (s *CopyJobSummary) SetMessageCategory(v string) *CopyJobSummary { + s.MessageCategory = &v + return s +} + +// SetRegion sets the Region field's value. +func (s *CopyJobSummary) SetRegion(v string) *CopyJobSummary { + s.Region = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *CopyJobSummary) SetResourceType(v string) *CopyJobSummary { + s.ResourceType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *CopyJobSummary) SetStartTime(v time.Time) *CopyJobSummary { + s.StartTime = &v + return s +} + +// SetState sets the State field's value. +func (s *CopyJobSummary) SetState(v string) *CopyJobSummary { + s.State = &v + return s +} + +type CreateBackupPlanInput struct { + _ struct{} `type:"structure"` + + // Specifies the body of a backup plan. Includes a BackupPlanName and one or + // more sets of Rules. + // + // BackupPlan is a required field + BackupPlan *PlanInput `type:"structure" required:"true"` + + // To help organize your resources, you can assign your own metadata to the + // resources that you create. Each tag is a key-value pair. The specified tags + // are assigned to all backups created with this plan. + // + // BackupPlanTags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateBackupPlanInput's + // String and GoString methods. + BackupPlanTags map[string]*string `type:"map" sensitive:"true"` + + // Identifies the request and allows failed requests to be retried without the + // risk of running the operation twice. If the request includes a CreatorRequestId + // that matches an existing backup plan, that plan is returned. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *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 CreateBackupPlanInput) 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 CreateBackupPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateBackupPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateBackupPlanInput"} + if s.BackupPlan == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlan")) + } + if s.BackupPlan != nil { + if err := s.BackupPlan.Validate(); err != nil { + invalidParams.AddNested("BackupPlan", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupPlan sets the BackupPlan field's value. +func (s *CreateBackupPlanInput) SetBackupPlan(v *PlanInput) *CreateBackupPlanInput { + s.BackupPlan = v + return s +} + +// SetBackupPlanTags sets the BackupPlanTags field's value. +func (s *CreateBackupPlanInput) SetBackupPlanTags(v map[string]*string) *CreateBackupPlanInput { + s.BackupPlanTags = v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateBackupPlanInput) SetCreatorRequestId(v string) *CreateBackupPlanInput { + s.CreatorRequestId = &v + return s +} + +type CreateBackupPlanOutput struct { + _ struct{} `type:"structure"` + + // A list of BackupOptions settings for a resource type. This option is only + // available for Windows Volume Shadow Copy Service (VSS) backup jobs. + AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` + + // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for + // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. + BackupPlanArn *string `type:"string"` + + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` + + // The date and time that a backup plan is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most + // 1,024 bytes long. They cannot be edited. + VersionId *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 CreateBackupPlanOutput) 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 CreateBackupPlanOutput) GoString() string { + return s.String() +} + +// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. +func (s *CreateBackupPlanOutput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *CreateBackupPlanOutput { + s.AdvancedBackupSettings = v + return s +} + +// SetBackupPlanArn sets the BackupPlanArn field's value. +func (s *CreateBackupPlanOutput) SetBackupPlanArn(v string) *CreateBackupPlanOutput { + s.BackupPlanArn = &v + return s +} + +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *CreateBackupPlanOutput) SetBackupPlanId(v string) *CreateBackupPlanOutput { + s.BackupPlanId = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CreateBackupPlanOutput) SetCreationDate(v time.Time) *CreateBackupPlanOutput { + s.CreationDate = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *CreateBackupPlanOutput) SetVersionId(v string) *CreateBackupPlanOutput { + s.VersionId = &v + return s +} + +type CreateBackupSelectionInput struct { + _ struct{} `type:"structure"` + + // Uniquely identifies the backup plan to be associated with the selection of + // resources. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + + // Specifies the body of a request to assign a set of resources to a backup + // plan. + // + // BackupSelection is a required field + BackupSelection *Selection `type:"structure" required:"true"` + + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *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 CreateBackupSelectionInput) 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 CreateBackupSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateBackupSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateBackupSelectionInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) + } + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + if s.BackupSelection == nil { + invalidParams.Add(request.NewErrParamRequired("BackupSelection")) + } + if s.BackupSelection != nil { + if err := s.BackupSelection.Validate(); err != nil { + invalidParams.AddNested("BackupSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *CreateBackupSelectionInput) SetBackupPlanId(v string) *CreateBackupSelectionInput { + s.BackupPlanId = &v + return s +} + +// SetBackupSelection sets the BackupSelection field's value. +func (s *CreateBackupSelectionInput) SetBackupSelection(v *Selection) *CreateBackupSelectionInput { + s.BackupSelection = v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateBackupSelectionInput) SetCreatorRequestId(v string) *CreateBackupSelectionInput { + s.CreatorRequestId = &v + return s +} + +type CreateBackupSelectionOutput struct { + _ struct{} `type:"structure"` + + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` + + // The date and time a backup selection is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // Uniquely identifies the body of a request to assign a set of resources to + // a backup plan. + SelectionId *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 CreateBackupSelectionOutput) 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 CreateBackupSelectionOutput) GoString() string { + return s.String() +} + +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *CreateBackupSelectionOutput) SetBackupPlanId(v string) *CreateBackupSelectionOutput { + s.BackupPlanId = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CreateBackupSelectionOutput) SetCreationDate(v time.Time) *CreateBackupSelectionOutput { + s.CreationDate = &v + return s +} + +// SetSelectionId sets the SelectionId field's value. +func (s *CreateBackupSelectionOutput) SetSelectionId(v string) *CreateBackupSelectionOutput { + s.SelectionId = &v + return s +} + +type CreateBackupVaultInput struct { + _ struct{} `type:"structure"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of letters, + // numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // Metadata that you can assign to help organize the resources that you create. + // Each tag is a key-value pair. + // + // BackupVaultTags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateBackupVaultInput's + // String and GoString methods. + BackupVaultTags map[string]*string `type:"map" sensitive:"true"` + + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // The server-side encryption key that is used to protect your backups; for + // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. + EncryptionKeyArn *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 CreateBackupVaultInput) 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 CreateBackupVaultInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateBackupVaultInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *CreateBackupVaultInput) SetBackupVaultName(v string) *CreateBackupVaultInput { + s.BackupVaultName = &v + return s +} + +// SetBackupVaultTags sets the BackupVaultTags field's value. +func (s *CreateBackupVaultInput) SetBackupVaultTags(v map[string]*string) *CreateBackupVaultInput { + s.BackupVaultTags = v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateBackupVaultInput) SetCreatorRequestId(v string) *CreateBackupVaultInput { + s.CreatorRequestId = &v + return s +} + +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *CreateBackupVaultInput) SetEncryptionKeyArn(v string) *CreateBackupVaultInput { + s.EncryptionKeyArn = &v + return s +} + +type CreateBackupVaultOutput struct { + _ struct{} `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for + // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Region where they are created. They consist of lowercase letters, numbers, + // and hyphens. + BackupVaultName *string `type:"string"` + + // The date and time a backup vault is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateBackupVaultOutput) 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 CreateBackupVaultOutput) GoString() string { + return s.String() +} + +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *CreateBackupVaultOutput) SetBackupVaultArn(v string) *CreateBackupVaultOutput { + s.BackupVaultArn = &v + return s +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *CreateBackupVaultOutput) SetBackupVaultName(v string) *CreateBackupVaultOutput { + s.BackupVaultName = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CreateBackupVaultOutput) SetCreationDate(v time.Time) *CreateBackupVaultOutput { + s.CreationDate = &v + return s +} + +type CreateFrameworkInput struct { + _ struct{} `type:"structure"` + + // A list of the controls that make up the framework. Each control in the list + // has a name, input parameters, and scope. + // + // FrameworkControls is a required field + FrameworkControls []*FrameworkControl `type:"list" required:"true"` + + // An optional description of the framework with a maximum of 1,024 characters. + FrameworkDescription *string `type:"string"` + + // The unique name of the framework. The name must be between 1 and 256 characters, + // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), + // and underscores (_). + // + // FrameworkName is a required field + FrameworkName *string `min:"1" type:"string" required:"true"` + + // Metadata that you can assign to help organize the frameworks that you create. + // Each tag is a key-value pair. + FrameworkTags map[string]*string `type:"map"` + + // A customer-chosen string that you can use to distinguish between otherwise + // identical calls to CreateFrameworkInput. Retrying a successful request with + // the same idempotency token results in a success message with no action taken. + IdempotencyToken *string `type:"string" idempotencyToken:"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 CreateFrameworkInput) 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 CreateFrameworkInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateFrameworkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateFrameworkInput"} + if s.FrameworkControls == nil { + invalidParams.Add(request.NewErrParamRequired("FrameworkControls")) + } + if s.FrameworkName == nil { + invalidParams.Add(request.NewErrParamRequired("FrameworkName")) + } + if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) + } + if s.FrameworkControls != nil { + for i, v := range s.FrameworkControls { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FrameworkControls", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFrameworkControls sets the FrameworkControls field's value. +func (s *CreateFrameworkInput) SetFrameworkControls(v []*FrameworkControl) *CreateFrameworkInput { + s.FrameworkControls = v + return s +} + +// SetFrameworkDescription sets the FrameworkDescription field's value. +func (s *CreateFrameworkInput) SetFrameworkDescription(v string) *CreateFrameworkInput { + s.FrameworkDescription = &v + return s +} + +// SetFrameworkName sets the FrameworkName field's value. +func (s *CreateFrameworkInput) SetFrameworkName(v string) *CreateFrameworkInput { + s.FrameworkName = &v + return s +} + +// SetFrameworkTags sets the FrameworkTags field's value. +func (s *CreateFrameworkInput) SetFrameworkTags(v map[string]*string) *CreateFrameworkInput { + s.FrameworkTags = v + return s +} + +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *CreateFrameworkInput) SetIdempotencyToken(v string) *CreateFrameworkInput { + s.IdempotencyToken = &v + return s +} + +type CreateFrameworkOutput struct { + _ struct{} `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + FrameworkArn *string `type:"string"` + + // The unique name of the framework. The name must be between 1 and 256 characters, + // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), + // and underscores (_). + FrameworkName *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 CreateFrameworkOutput) 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 CreateFrameworkOutput) GoString() string { + return s.String() +} + +// SetFrameworkArn sets the FrameworkArn field's value. +func (s *CreateFrameworkOutput) SetFrameworkArn(v string) *CreateFrameworkOutput { + s.FrameworkArn = &v + return s +} + +// SetFrameworkName sets the FrameworkName field's value. +func (s *CreateFrameworkOutput) SetFrameworkName(v string) *CreateFrameworkOutput { + s.FrameworkName = &v + return s +} + +type CreateLegalHoldInput struct { + _ struct{} `type:"structure"` + + // This is the string description of the legal hold. + // + // Description is a required field + Description *string `type:"string" required:"true"` + + // This is a user-chosen string used to distinguish between otherwise identical + // calls. Retrying a successful request with the same idempotency token results + // in a success message with no action taken. + IdempotencyToken *string `type:"string"` + + // This specifies criteria to assign a set of resources, such as resource types + // or backup vaults. + RecoveryPointSelection *RecoveryPointSelection `type:"structure"` + + // Optional tags to include. A tag is a key-value pair you can use to manage, + // filter, and search for your resources. Allowed characters include UTF-8 letters, + // numbers, spaces, and the following characters: + - = . _ : /. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateLegalHoldInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` + + // This is the string title of the legal hold. + // + // Title is a required field + Title *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateLegalHoldInput) 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 CreateLegalHoldInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLegalHoldInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLegalHoldInput"} + if s.Description == nil { + invalidParams.Add(request.NewErrParamRequired("Description")) + } + if s.Title == nil { + invalidParams.Add(request.NewErrParamRequired("Title")) + } + if s.RecoveryPointSelection != nil { + if err := s.RecoveryPointSelection.Validate(); err != nil { + invalidParams.AddNested("RecoveryPointSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateLegalHoldInput) SetDescription(v string) *CreateLegalHoldInput { + s.Description = &v + return s +} + +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *CreateLegalHoldInput) SetIdempotencyToken(v string) *CreateLegalHoldInput { + s.IdempotencyToken = &v + return s +} + +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *CreateLegalHoldInput) SetRecoveryPointSelection(v *RecoveryPointSelection) *CreateLegalHoldInput { + s.RecoveryPointSelection = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateLegalHoldInput) SetTags(v map[string]*string) *CreateLegalHoldInput { + s.Tags = v + return s +} + +// SetTitle sets the Title field's value. +func (s *CreateLegalHoldInput) SetTitle(v string) *CreateLegalHoldInput { + s.Title = &v + return s +} + +type CreateLegalHoldOutput struct { + _ struct{} `type:"structure"` + + // Time in number format when legal hold was created. + CreationDate *time.Time `type:"timestamp"` + + // This is the returned string description of the legal hold. + Description *string `type:"string"` + + // This is the ARN (Amazon Resource Number) of the created legal hold. + LegalHoldArn *string `type:"string"` + + // Legal hold ID returned for the specified legal hold on a recovery point. + LegalHoldId *string `type:"string"` + + // This specifies criteria to assign a set of resources, such as resource types + // or backup vaults. + RecoveryPointSelection *RecoveryPointSelection `type:"structure"` + + // This displays the status of the legal hold returned after creating the legal + // hold. Statuses can be ACTIVE, PENDING, CANCELED, CANCELING, or FAILED. + Status *string `type:"string" enum:"LegalHoldStatus"` + + // This is the string title of the legal hold returned after creating the legal + // hold. + Title *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 CreateLegalHoldOutput) 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 CreateLegalHoldOutput) GoString() string { + return s.String() +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CreateLegalHoldOutput) SetCreationDate(v time.Time) *CreateLegalHoldOutput { + s.CreationDate = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateLegalHoldOutput) SetDescription(v string) *CreateLegalHoldOutput { + s.Description = &v + return s +} + +// SetLegalHoldArn sets the LegalHoldArn field's value. +func (s *CreateLegalHoldOutput) SetLegalHoldArn(v string) *CreateLegalHoldOutput { + s.LegalHoldArn = &v + return s +} + +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *CreateLegalHoldOutput) SetLegalHoldId(v string) *CreateLegalHoldOutput { + s.LegalHoldId = &v + return s +} + +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *CreateLegalHoldOutput) SetRecoveryPointSelection(v *RecoveryPointSelection) *CreateLegalHoldOutput { + s.RecoveryPointSelection = v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateLegalHoldOutput) SetStatus(v string) *CreateLegalHoldOutput { + s.Status = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *CreateLegalHoldOutput) SetTitle(v string) *CreateLegalHoldOutput { + s.Title = &v + return s +} + +type CreateLogicallyAirGappedBackupVaultInput struct { + _ struct{} `type:"structure"` + + // This is the name of the vault that is being created. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // These are the tags that will be included in the newly-created vault. + // + // BackupVaultTags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateLogicallyAirGappedBackupVaultInput's + // String and GoString methods. + BackupVaultTags map[string]*string `type:"map" sensitive:"true"` + + // This is the ID of the creation request. + // + // This parameter is optional. If used, this parameter must contain 1 to 50 + // alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // This is the setting that specifies the maximum retention period that the + // vault retains its recovery points. If this parameter is not specified, Backup + // does not enforce a maximum retention period on the recovery points in the + // vault (allowing indefinite storage). + // + // If specified, any backup or copy job to the vault must have a lifecycle policy + // with a retention period equal to or shorter than the maximum retention period. + // If the job retention period is longer than that maximum retention period, + // then the vault fails the backup or copy job, and you should either modify + // your lifecycle settings or use a different vault. + // + // MaxRetentionDays is a required field + MaxRetentionDays *int64 `type:"long" required:"true"` + + // This setting specifies the minimum retention period that the vault retains + // its recovery points. If this parameter is not specified, no minimum retention + // period is enforced. + // + // If specified, any backup or copy job to the vault must have a lifecycle policy + // with a retention period equal to or longer than the minimum retention period. + // If a job retention period is shorter than that minimum retention period, + // then the vault fails the backup or copy job, and you should either modify + // your lifecycle settings or use a different vault. + // + // MinRetentionDays is a required field + MinRetentionDays *int64 `type:"long" 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 CreateLogicallyAirGappedBackupVaultInput) 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 CreateLogicallyAirGappedBackupVaultInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLogicallyAirGappedBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLogicallyAirGappedBackupVaultInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.MaxRetentionDays == nil { + invalidParams.Add(request.NewErrParamRequired("MaxRetentionDays")) + } + if s.MinRetentionDays == nil { + invalidParams.Add(request.NewErrParamRequired("MinRetentionDays")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *CreateLogicallyAirGappedBackupVaultInput) SetBackupVaultName(v string) *CreateLogicallyAirGappedBackupVaultInput { + s.BackupVaultName = &v + return s +} + +// SetBackupVaultTags sets the BackupVaultTags field's value. +func (s *CreateLogicallyAirGappedBackupVaultInput) SetBackupVaultTags(v map[string]*string) *CreateLogicallyAirGappedBackupVaultInput { + s.BackupVaultTags = v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateLogicallyAirGappedBackupVaultInput) SetCreatorRequestId(v string) *CreateLogicallyAirGappedBackupVaultInput { + s.CreatorRequestId = &v + return s +} + +// SetMaxRetentionDays sets the MaxRetentionDays field's value. +func (s *CreateLogicallyAirGappedBackupVaultInput) SetMaxRetentionDays(v int64) *CreateLogicallyAirGappedBackupVaultInput { + s.MaxRetentionDays = &v + return s +} + +// SetMinRetentionDays sets the MinRetentionDays field's value. +func (s *CreateLogicallyAirGappedBackupVaultInput) SetMinRetentionDays(v int64) *CreateLogicallyAirGappedBackupVaultInput { + s.MinRetentionDays = &v + return s +} + +type CreateLogicallyAirGappedBackupVaultOutput struct { + _ struct{} `type:"structure"` + + // This is the ARN (Amazon Resource Name) of the vault being created. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Logically air-gapped + // backup vaults are identified by names that are unique to the account used + // to create them and the Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + BackupVaultName *string `type:"string"` + + // The date and time when the vault was created. + // + // This value is in Unix format, Coordinated Universal Time (UTC), and accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // This is the current state of the vault. + VaultState *string `type:"string" enum:"VaultState"` +} + +// 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 CreateLogicallyAirGappedBackupVaultOutput) 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 CreateLogicallyAirGappedBackupVaultOutput) GoString() string { + return s.String() +} + +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *CreateLogicallyAirGappedBackupVaultOutput) SetBackupVaultArn(v string) *CreateLogicallyAirGappedBackupVaultOutput { + s.BackupVaultArn = &v + return s +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *CreateLogicallyAirGappedBackupVaultOutput) SetBackupVaultName(v string) *CreateLogicallyAirGappedBackupVaultOutput { + s.BackupVaultName = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *CreateLogicallyAirGappedBackupVaultOutput) SetCreationDate(v time.Time) *CreateLogicallyAirGappedBackupVaultOutput { + s.CreationDate = &v + return s +} + +// SetVaultState sets the VaultState field's value. +func (s *CreateLogicallyAirGappedBackupVaultOutput) SetVaultState(v string) *CreateLogicallyAirGappedBackupVaultOutput { + s.VaultState = &v + return s +} + +type CreateReportPlanInput struct { + _ struct{} `type:"structure"` + + // A customer-chosen string that you can use to distinguish between otherwise + // identical calls to CreateReportPlanInput. Retrying a successful request with + // the same idempotency token results in a success message with no action taken. + IdempotencyToken *string `type:"string" idempotencyToken:"true"` + + // A structure that contains information about where and how to deliver your + // reports, specifically your Amazon S3 bucket name, S3 key prefix, and the + // formats of your reports. + // + // ReportDeliveryChannel is a required field + ReportDeliveryChannel *ReportDeliveryChannel `type:"structure" required:"true"` + + // An optional description of the report plan with a maximum of 1,024 characters. + ReportPlanDescription *string `type:"string"` + + // The unique name of the report plan. The name must be between 1 and 256 characters, + // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), + // and underscores (_). + // + // ReportPlanName is a required field + ReportPlanName *string `min:"1" type:"string" required:"true"` + + // Metadata that you can assign to help organize the report plans that you create. + // Each tag is a key-value pair. + ReportPlanTags map[string]*string `type:"map"` + + // Identifies the report template for the report. Reports are built using a + // report template. The report templates are: + // + // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT + // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + // + // If the report template is RESOURCE_COMPLIANCE_REPORT or CONTROL_COMPLIANCE_REPORT, + // this API resource also describes the report coverage by Amazon Web Services + // Regions and frameworks. + // + // ReportSetting is a required field + ReportSetting *ReportSetting `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 CreateReportPlanInput) 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 CreateReportPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateReportPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateReportPlanInput"} + if s.ReportDeliveryChannel == nil { + invalidParams.Add(request.NewErrParamRequired("ReportDeliveryChannel")) + } + if s.ReportPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) + } + if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) + } + if s.ReportSetting == nil { + invalidParams.Add(request.NewErrParamRequired("ReportSetting")) + } + if s.ReportDeliveryChannel != nil { + if err := s.ReportDeliveryChannel.Validate(); err != nil { + invalidParams.AddNested("ReportDeliveryChannel", err.(request.ErrInvalidParams)) + } + } + if s.ReportSetting != nil { + if err := s.ReportSetting.Validate(); err != nil { + invalidParams.AddNested("ReportSetting", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *CreateReportPlanInput) SetIdempotencyToken(v string) *CreateReportPlanInput { + s.IdempotencyToken = &v + return s +} + +// SetReportDeliveryChannel sets the ReportDeliveryChannel field's value. +func (s *CreateReportPlanInput) SetReportDeliveryChannel(v *ReportDeliveryChannel) *CreateReportPlanInput { + s.ReportDeliveryChannel = v + return s +} + +// SetReportPlanDescription sets the ReportPlanDescription field's value. +func (s *CreateReportPlanInput) SetReportPlanDescription(v string) *CreateReportPlanInput { + s.ReportPlanDescription = &v + return s +} + +// SetReportPlanName sets the ReportPlanName field's value. +func (s *CreateReportPlanInput) SetReportPlanName(v string) *CreateReportPlanInput { + s.ReportPlanName = &v + return s +} + +// SetReportPlanTags sets the ReportPlanTags field's value. +func (s *CreateReportPlanInput) SetReportPlanTags(v map[string]*string) *CreateReportPlanInput { + s.ReportPlanTags = v + return s +} + +// SetReportSetting sets the ReportSetting field's value. +func (s *CreateReportPlanInput) SetReportSetting(v *ReportSetting) *CreateReportPlanInput { + s.ReportSetting = v + return s +} + +type CreateReportPlanOutput struct { + _ struct{} `type:"structure"` + + // The date and time a backup vault is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationTime *time.Time `type:"timestamp"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + ReportPlanArn *string `type:"string"` + + // The unique name of the report plan. + ReportPlanName *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 CreateReportPlanOutput) 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 CreateReportPlanOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CreateReportPlanOutput) SetCreationTime(v time.Time) *CreateReportPlanOutput { + s.CreationTime = &v + return s +} + +// SetReportPlanArn sets the ReportPlanArn field's value. +func (s *CreateReportPlanOutput) SetReportPlanArn(v string) *CreateReportPlanOutput { + s.ReportPlanArn = &v + return s +} + +// SetReportPlanName sets the ReportPlanName field's value. +func (s *CreateReportPlanOutput) SetReportPlanName(v string) *CreateReportPlanOutput { + s.ReportPlanName = &v + return s +} + +type CreateRestoreTestingPlanInput struct { + _ struct{} `type:"structure"` + + // This is a unique string that identifies the request and allows failed requests + // to be retriedwithout the risk of running the operation twice. This parameter + // is optional. If used, this parameter must contain 1 to 50 alphanumeric or + // '-_.' characters. + CreatorRequestId *string `type:"string"` + + // A restore testing plan must contain a unique RestoreTestingPlanName string + // you create and must contain a ScheduleExpression cron. You may optionally + // include a StartWindowHours integer and a CreatorRequestId string. + // + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. This cannot be changed after creation, and it must consist + // of only alphanumeric characters and underscores. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForCreate `type:"structure" required:"true"` + + // Optional tags to include. A tag is a key-value pair you can use to manage, + // filter, and search for your resources. Allowed characters include UTF-8 letters,numbers, + // spaces, and the following characters: + - = . _ : /. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateRestoreTestingPlanInput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingPlanInput) 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 CreateRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRestoreTestingPlanInput"} + if s.RestoreTestingPlan == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlan")) + } + if s.RestoreTestingPlan != nil { + if err := s.RestoreTestingPlan.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingPlan", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateRestoreTestingPlanInput) SetCreatorRequestId(v string) *CreateRestoreTestingPlanInput { + s.CreatorRequestId = &v + return s +} + +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *CreateRestoreTestingPlanInput) SetRestoreTestingPlan(v *RestoreTestingPlanForCreate) *CreateRestoreTestingPlanInput { + s.RestoreTestingPlan = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateRestoreTestingPlanInput) SetTags(v map[string]*string) *CreateRestoreTestingPlanInput { + s.Tags = v + return s +} + +type CreateRestoreTestingPlanOutput struct { _ struct{} `type:"structure"` - // The account ID that owns the jobs within the summary. - AccountId *string `type:"string"` + // The date and time a restore testing plan was created, in Unix format and + // Coordinated Universal Time (UTC). The value of CreationTime is accurate to + // milliseconds. For example, the value 1516925490.087 represents Friday, January + // 26, 2018 12:11:30.087AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` - // The value as a number of jobs in a job summary. - Count *int64 `type:"integer"` + // An Amazon Resource Name (ARN) that uniquely identifies the created restore + // testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` - // The value of time in number format of a job end time. + // This unique string is the name of the restore testing plan. // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - EndTime *time.Time `type:"timestamp"` + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` +} - // This parameter is the job count for the specified message category. +// 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 CreateRestoreTestingPlanOutput) 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 CreateRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CreateRestoreTestingPlanOutput) SetCreationTime(v time.Time) *CreateRestoreTestingPlanOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *CreateRestoreTestingPlanOutput) SetRestoreTestingPlanArn(v string) *CreateRestoreTestingPlanOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingPlanOutput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingPlanOutput { + s.RestoreTestingPlanName = &v + return s +} + +type CreateRestoreTestingSelectionInput struct { + _ struct{} `type:"structure"` + + // This is an optional unique string that identifies the request and allows + // failed requests to be retried without the risk of running the operation twice. + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` + + // Input the restore testing plan name that was returned from the related CreateRestoreTestingPlan + // request. // - // Example strings include AccessDenied, Success, and InvalidParameters. See - // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // This consists of RestoreTestingSelectionName, ProtectedResourceType, and + // one of the following: // - // The the value ANY returns count of all message categories. + // * ProtectedResourceArns // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - MessageCategory *string `type:"string"` + // * ProtectedResourceConditions + // + // Each protected resource type can have one single value. + // + // A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns + // along with ProtectedResourceConditions. Alternatively, you can include up + // to 30 specific protected resource ARNs in ProtectedResourceArns. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForCreate `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 CreateRestoreTestingSelectionInput) 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 CreateRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelection")) + } + if s.RestoreTestingSelection != nil { + if err := s.RestoreTestingSelection.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *CreateRestoreTestingSelectionInput) SetCreatorRequestId(v string) *CreateRestoreTestingSelectionInput { + s.CreatorRequestId = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *CreateRestoreTestingSelectionInput) SetRestoreTestingSelection(v *RestoreTestingSelectionForCreate) *CreateRestoreTestingSelectionInput { + s.RestoreTestingSelection = v + return s +} + +type CreateRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing selection was created successfully. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // This is the ARN of the restore testing plan with which the restore testing + // selection is associated. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // Unique string that is the name of the restore testing plan. + // + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateRestoreTestingSelectionOutput) 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 CreateRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *CreateRestoreTestingSelectionOutput) SetCreationTime(v time.Time) *CreateRestoreTestingSelectionOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingPlanArn(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingPlanName(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *CreateRestoreTestingSelectionOutput) SetRestoreTestingSelectionName(v string) *CreateRestoreTestingSelectionOutput { + s.RestoreTestingSelectionName = &v + return s +} + +// This is a resource filter containing FromDate: DateTime and ToDate: DateTime. +// Both values are required. Future DateTime values are not permitted. +// +// The date and time are in Unix format and Coordinated Universal Time (UTC), +// and it is accurate to milliseconds ((milliseconds are optional). For example, +// the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 +// AM. +type DateRange struct { + _ struct{} `type:"structure"` + + // This value is the beginning date, inclusive. + // + // The date and time are in Unix format and Coordinated Universal Time (UTC), + // and it is accurate to milliseconds (milliseconds are optional). + // + // FromDate is a required field + FromDate *time.Time `type:"timestamp" required:"true"` + + // This value is the end date, inclusive. + // + // The date and time are in Unix format and Coordinated Universal Time (UTC), + // and it is accurate to milliseconds (milliseconds are optional). + // + // ToDate is a required field + ToDate *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DateRange) 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 DateRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DateRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DateRange"} + if s.FromDate == nil { + invalidParams.Add(request.NewErrParamRequired("FromDate")) + } + if s.ToDate == nil { + invalidParams.Add(request.NewErrParamRequired("ToDate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFromDate sets the FromDate field's value. +func (s *DateRange) SetFromDate(v time.Time) *DateRange { + s.FromDate = &v + return s +} + +// SetToDate sets the ToDate field's value. +func (s *DateRange) SetToDate(v time.Time) *DateRange { + s.ToDate = &v + return s +} + +type DeleteBackupPlanInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Uniquely identifies a backup plan. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" 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 DeleteBackupPlanInput) 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 DeleteBackupPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteBackupPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupPlanInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) + } + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // The Amazon Web Services Regions within the job summary. - Region *string `type:"string"` +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *DeleteBackupPlanInput) SetBackupPlanId(v string) *DeleteBackupPlanInput { + s.BackupPlanId = &v + return s +} - // This value is the job count for the specified resource type. The request - // GetSupportedResourceTypes returns strings for supported resource types. - ResourceType *string `type:"string"` +type DeleteBackupPlanOutput struct { + _ struct{} `type:"structure"` - // The value of time in number format of a job start time. - // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - StartTime *time.Time `type:"timestamp"` + // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for + // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. + BackupPlanArn *string `type:"string"` - // This value is job count for jobs with the specified state. - State *string `type:"string" enum:"BackupJobStatus"` + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` + + // The date and time a backup plan is deleted, in Unix format and Coordinated + // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + DeletionDate *time.Time `type:"timestamp"` + + // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most + // 1,024 bytes long. Version IDs cannot be edited. + VersionId *string `type:"string"` } // String returns the string representation. @@ -8482,7 +12576,7 @@ type BackupJobSummary 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 BackupJobSummary) String() string { +func (s DeleteBackupPlanOutput) String() string { return awsutil.Prettify(s) } @@ -8491,83 +12585,103 @@ func (s BackupJobSummary) 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 BackupJobSummary) GoString() string { +func (s DeleteBackupPlanOutput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *BackupJobSummary) SetAccountId(v string) *BackupJobSummary { - s.AccountId = &v +// SetBackupPlanArn sets the BackupPlanArn field's value. +func (s *DeleteBackupPlanOutput) SetBackupPlanArn(v string) *DeleteBackupPlanOutput { + s.BackupPlanArn = &v return s } -// SetCount sets the Count field's value. -func (s *BackupJobSummary) SetCount(v int64) *BackupJobSummary { - s.Count = &v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *DeleteBackupPlanOutput) SetBackupPlanId(v string) *DeleteBackupPlanOutput { + s.BackupPlanId = &v return s } -// SetEndTime sets the EndTime field's value. -func (s *BackupJobSummary) SetEndTime(v time.Time) *BackupJobSummary { - s.EndTime = &v +// SetDeletionDate sets the DeletionDate field's value. +func (s *DeleteBackupPlanOutput) SetDeletionDate(v time.Time) *DeleteBackupPlanOutput { + s.DeletionDate = &v return s } -// SetMessageCategory sets the MessageCategory field's value. -func (s *BackupJobSummary) SetMessageCategory(v string) *BackupJobSummary { - s.MessageCategory = &v +// SetVersionId sets the VersionId field's value. +func (s *DeleteBackupPlanOutput) SetVersionId(v string) *DeleteBackupPlanOutput { + s.VersionId = &v return s } -// SetRegion sets the Region field's value. -func (s *BackupJobSummary) SetRegion(v string) *BackupJobSummary { - s.Region = &v - return s +type DeleteBackupSelectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Uniquely identifies a backup plan. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + + // Uniquely identifies the body of a request to assign a set of resources to + // a backup plan. + // + // SelectionId is a required field + SelectionId *string `location:"uri" locationName:"selectionId" type:"string" required:"true"` } -// SetResourceType sets the ResourceType field's value. -func (s *BackupJobSummary) SetResourceType(v string) *BackupJobSummary { - s.ResourceType = &v - return s +// 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 DeleteBackupSelectionInput) String() string { + return awsutil.Prettify(s) } -// SetStartTime sets the StartTime field's value. -func (s *BackupJobSummary) SetStartTime(v time.Time) *BackupJobSummary { - s.StartTime = &v +// 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 DeleteBackupSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteBackupSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupSelectionInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) + } + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + if s.SelectionId == nil { + invalidParams.Add(request.NewErrParamRequired("SelectionId")) + } + if s.SelectionId != nil && len(*s.SelectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SelectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *DeleteBackupSelectionInput) SetBackupPlanId(v string) *DeleteBackupSelectionInput { + s.BackupPlanId = &v return s } -// SetState sets the State field's value. -func (s *BackupJobSummary) SetState(v string) *BackupJobSummary { - s.State = &v +// SetSelectionId sets the SelectionId field's value. +func (s *DeleteBackupSelectionInput) SetSelectionId(v string) *DeleteBackupSelectionInput { + s.SelectionId = &v return s } -// Contains DeleteAt and MoveToColdStorageAt timestamps, which are used to specify -// a lifecycle for a recovery point. -// -// The lifecycle defines when a protected resource is transitioned to cold storage -// and when it expires. Backup transitions and expires backups automatically -// according to the lifecycle that you define. -// -// Backups transitioned to cold storage must be stored in cold storage for a -// minimum of 90 days. Therefore, the “retention” setting must be 90 days -// greater than the “transition to cold after days” setting. The “transition -// to cold after days” setting cannot be changed after a backup has been transitioned -// to cold. -// -// Resource types that are able to be transitioned to cold storage are listed -// in the "Lifecycle to cold storage" section of the Feature availability by -// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) -// table. Backup ignores this expression for other resource types. -type CalculatedLifecycle struct { +type DeleteBackupSelectionOutput struct { _ struct{} `type:"structure"` - - // A timestamp that specifies when to delete a recovery point. - DeleteAt *time.Time `type:"timestamp"` - - // A timestamp that specifies when to transition a recovery point to cold storage. - MoveToColdStorageAt *time.Time `type:"timestamp"` } // String returns the string representation. @@ -8575,7 +12689,7 @@ type CalculatedLifecycle 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 CalculatedLifecycle) String() string { +func (s DeleteBackupSelectionOutput) String() string { return awsutil.Prettify(s) } @@ -8584,38 +12698,20 @@ func (s CalculatedLifecycle) 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 CalculatedLifecycle) GoString() string { +func (s DeleteBackupSelectionOutput) GoString() string { return s.String() } -// SetDeleteAt sets the DeleteAt field's value. -func (s *CalculatedLifecycle) SetDeleteAt(v time.Time) *CalculatedLifecycle { - s.DeleteAt = &v - return s -} - -// SetMoveToColdStorageAt sets the MoveToColdStorageAt field's value. -func (s *CalculatedLifecycle) SetMoveToColdStorageAt(v time.Time) *CalculatedLifecycle { - s.MoveToColdStorageAt = &v - return s -} - -type CancelLegalHoldInput struct { +type DeleteBackupVaultAccessPolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` - // String describing the reason for removing the legal hold. - // - // CancelDescription is a required field - CancelDescription *string `location:"querystring" locationName:"cancelDescription" type:"string" required:"true"` - - // Legal hold ID required to remove the specified legal hold on a recovery point. + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // - // LegalHoldId is a required field - LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` - - // The integer amount in days specifying amount of days after this API operation - // to remove legal hold. - RetainRecordInDays *int64 `location:"querystring" locationName:"retainRecordInDays" type:"long"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -8623,7 +12719,7 @@ type CancelLegalHoldInput 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 CancelLegalHoldInput) String() string { +func (s DeleteBackupVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } @@ -8632,21 +12728,18 @@ func (s CancelLegalHoldInput) 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 CancelLegalHoldInput) GoString() string { +func (s DeleteBackupVaultAccessPolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CancelLegalHoldInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CancelLegalHoldInput"} - if s.CancelDescription == nil { - invalidParams.Add(request.NewErrParamRequired("CancelDescription")) - } - if s.LegalHoldId == nil { - invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) +func (s *DeleteBackupVaultAccessPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultAccessPolicyInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) } if invalidParams.Len() > 0 { @@ -8655,26 +12748,44 @@ func (s *CancelLegalHoldInput) Validate() error { return nil } -// SetCancelDescription sets the CancelDescription field's value. -func (s *CancelLegalHoldInput) SetCancelDescription(v string) *CancelLegalHoldInput { - s.CancelDescription = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DeleteBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *DeleteBackupVaultAccessPolicyInput { + s.BackupVaultName = &v return s } -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *CancelLegalHoldInput) SetLegalHoldId(v string) *CancelLegalHoldInput { - s.LegalHoldId = &v - return s +type DeleteBackupVaultAccessPolicyOutput struct { + _ struct{} `type:"structure"` } -// SetRetainRecordInDays sets the RetainRecordInDays field's value. -func (s *CancelLegalHoldInput) SetRetainRecordInDays(v int64) *CancelLegalHoldInput { - s.RetainRecordInDays = &v - return s +// 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 DeleteBackupVaultAccessPolicyOutput) String() string { + return awsutil.Prettify(s) } -type CancelLegalHoldOutput struct { - _ struct{} `type:"structure"` +// 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 DeleteBackupVaultAccessPolicyOutput) GoString() string { + return s.String() +} + +type DeleteBackupVaultInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -8682,7 +12793,7 @@ type CancelLegalHoldOutput 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 CancelLegalHoldOutput) String() string { +func (s DeleteBackupVaultInput) String() string { return awsutil.Prettify(s) } @@ -8691,36 +12802,39 @@ func (s CancelLegalHoldOutput) 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 CancelLegalHoldOutput) GoString() string { +func (s DeleteBackupVaultInput) GoString() string { return s.String() } -// Contains an array of triplets made up of a condition type (such as StringEquals), -// a key, and a value. Used to filter resources using their tags and assign -// them to a backup plan. Case sensitive. -type Condition struct { - _ struct{} `type:"structure"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } - // The key in a key-value pair. For example, in the tag Department: Accounting, - // Department is the key. - // - // ConditionKey is a required field - ConditionKey *string `type:"string" required:"true"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - // An operation applied to a key-value pair used to assign resources to your - // backup plan. Condition only supports StringEquals. For more flexible assignment - // options, including StringLike and the ability to exclude resources from your - // backup plan, use Conditions (with an "s" on the end) for your BackupSelection - // (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_BackupSelection.html). - // - // ConditionType is a required field - ConditionType *string `type:"string" required:"true" enum:"ConditionType"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DeleteBackupVaultInput) SetBackupVaultName(v string) *DeleteBackupVaultInput { + s.BackupVaultName = &v + return s +} - // The value in a key-value pair. For example, in the tag Department: Accounting, - // Accounting is the value. +type DeleteBackupVaultLockConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the backup vault from which to delete Backup Vault Lock. // - // ConditionValue is a required field - ConditionValue *string `type:"string" required:"true"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -8728,7 +12842,7 @@ type Condition 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 Condition) String() string { +func (s DeleteBackupVaultLockConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -8737,21 +12851,18 @@ func (s Condition) 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 Condition) GoString() string { +func (s DeleteBackupVaultLockConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *Condition) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "Condition"} - if s.ConditionKey == nil { - invalidParams.Add(request.NewErrParamRequired("ConditionKey")) - } - if s.ConditionType == nil { - invalidParams.Add(request.NewErrParamRequired("ConditionType")) +func (s *DeleteBackupVaultLockConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultLockConfigurationInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.ConditionValue == nil { - invalidParams.Add(request.NewErrParamRequired("ConditionValue")) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) } if invalidParams.Len() > 0 { @@ -8760,36 +12871,14 @@ func (s *Condition) Validate() error { return nil } -// SetConditionKey sets the ConditionKey field's value. -func (s *Condition) SetConditionKey(v string) *Condition { - s.ConditionKey = &v - return s -} - -// SetConditionType sets the ConditionType field's value. -func (s *Condition) SetConditionType(v string) *Condition { - s.ConditionType = &v - return s -} - -// SetConditionValue sets the ConditionValue field's value. -func (s *Condition) SetConditionValue(v string) *Condition { - s.ConditionValue = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DeleteBackupVaultLockConfigurationInput) SetBackupVaultName(v string) *DeleteBackupVaultLockConfigurationInput { + s.BackupVaultName = &v return s } -// Includes information about tags you define to assign tagged resources to -// a backup plan. -type ConditionParameter struct { +type DeleteBackupVaultLockConfigurationOutput struct { _ struct{} `type:"structure"` - - // The key in a key-value pair. For example, in the tag Department: Accounting, - // Department is the key. - ConditionKey *string `type:"string"` - - // The value in a key-value pair. For example, in the tag Department: Accounting, - // Accounting is the value. - ConditionValue *string `type:"string"` } // String returns the string representation. @@ -8797,7 +12886,7 @@ type ConditionParameter 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 ConditionParameter) String() string { +func (s DeleteBackupVaultLockConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -8806,43 +12895,20 @@ func (s ConditionParameter) 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 ConditionParameter) GoString() string { +func (s DeleteBackupVaultLockConfigurationOutput) GoString() string { return s.String() } -// SetConditionKey sets the ConditionKey field's value. -func (s *ConditionParameter) SetConditionKey(v string) *ConditionParameter { - s.ConditionKey = &v - return s -} - -// SetConditionValue sets the ConditionValue field's value. -func (s *ConditionParameter) SetConditionValue(v string) *ConditionParameter { - s.ConditionValue = &v - return s -} - -// Contains information about which resources to include or exclude from a backup -// plan using their tags. Conditions are case sensitive. -type Conditions struct { - _ struct{} `type:"structure"` - - // Filters the values of your tagged resources for only those resources that - // you tagged with the same value. Also called "exact matching." - StringEquals []*ConditionParameter `type:"list"` - - // Filters the values of your tagged resources for matching tag values with - // the use of a wildcard character (*) anywhere in the string. For example, - // "prod*" or "*rod*" matches the tag value "production". - StringLike []*ConditionParameter `type:"list"` - - // Filters the values of your tagged resources for only those resources that - // you tagged that do not have the same value. Also called "negated matching." - StringNotEquals []*ConditionParameter `type:"list"` +type DeleteBackupVaultNotificationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Filters the values of your tagged resources for non-matching tag values with - // the use of a wildcard character (*) anywhere in the string. - StringNotLike []*ConditionParameter `type:"list"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Region where they are created. They consist of lowercase letters, numbers, + // and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -8850,7 +12916,7 @@ type Conditions 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 Conditions) String() string { +func (s DeleteBackupVaultNotificationsInput) String() string { return awsutil.Prettify(s) } @@ -8859,47 +12925,34 @@ func (s Conditions) 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 Conditions) GoString() string { +func (s DeleteBackupVaultNotificationsInput) GoString() string { return s.String() } -// SetStringEquals sets the StringEquals field's value. -func (s *Conditions) SetStringEquals(v []*ConditionParameter) *Conditions { - s.StringEquals = v - return s -} - -// SetStringLike sets the StringLike field's value. -func (s *Conditions) SetStringLike(v []*ConditionParameter) *Conditions { - s.StringLike = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteBackupVaultNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultNotificationsInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } -// SetStringNotEquals sets the StringNotEquals field's value. -func (s *Conditions) SetStringNotEquals(v []*ConditionParameter) *Conditions { - s.StringNotEquals = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStringNotLike sets the StringNotLike field's value. -func (s *Conditions) SetStringNotLike(v []*ConditionParameter) *Conditions { - s.StringNotLike = v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DeleteBackupVaultNotificationsInput) SetBackupVaultName(v string) *DeleteBackupVaultNotificationsInput { + s.BackupVaultName = &v return s } -// Backup can't perform the action that you requested until it finishes performing -// a previous action. Try again later. -type ConflictException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Code_ *string `locationName:"Code" type:"string"` - - Context *string `type:"string"` - - Message_ *string `locationName:"Message" type:"string"` - - Type *string `type:"string"` +type DeleteBackupVaultNotificationsOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation. @@ -8907,7 +12960,7 @@ type ConflictException 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 ConflictException) String() string { +func (s DeleteBackupVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } @@ -8916,60 +12969,12 @@ func (s ConflictException) 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 ConflictException) GoString() string { +func (s DeleteBackupVaultNotificationsOutput) GoString() string { return s.String() } -func newErrorConflictException(v protocol.ResponseMetadata) error { - return &ConflictException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *ConflictException) Code() string { - return "ConflictException" -} - -// Message returns the exception's message. -func (s *ConflictException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConflictException) OrigErr() error { - return nil -} - -func (s *ConflictException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *ConflictException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *ConflictException) RequestID() string { - return s.RespMetadata.RequestID -} - -// A list of parameters for a control. A control can have zero, one, or more -// than one parameter. An example of a control with two parameters is: "backup -// plan frequency is at least daily and the retention period is at least 1 year". -// The first parameter is daily. The second parameter is 1 year. -type ControlInputParameter struct { - _ struct{} `type:"structure"` - - // The name of a parameter, for example, BackupPlanFrequency. - ParameterName *string `type:"string"` - - // The value of parameter, for example, hourly. - ParameterValue *string `type:"string"` +type DeleteBackupVaultOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation. @@ -8977,7 +12982,7 @@ type ControlInputParameter 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 ControlInputParameter) String() string { +func (s DeleteBackupVaultOutput) String() string { return awsutil.Prettify(s) } @@ -8986,46 +12991,17 @@ func (s ControlInputParameter) 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 ControlInputParameter) GoString() string { +func (s DeleteBackupVaultOutput) GoString() string { return s.String() } -// SetParameterName sets the ParameterName field's value. -func (s *ControlInputParameter) SetParameterName(v string) *ControlInputParameter { - s.ParameterName = &v - return s -} - -// SetParameterValue sets the ParameterValue field's value. -func (s *ControlInputParameter) SetParameterValue(v string) *ControlInputParameter { - s.ParameterValue = &v - return s -} - -// A framework consists of one or more controls. Each control has its own control -// scope. The control scope can include one or more resource types, a combination -// of a tag key and value, or a combination of one resource type and one resource -// ID. If no scope is specified, evaluations for the rule are triggered when -// any resource in your recording group changes in configuration. -// -// To set a control scope that includes all of a particular resource, leave -// the ControlScope empty or do not pass it when calling CreateFramework. -type ControlScope struct { - _ struct{} `type:"structure"` - - // The ID of the only Amazon Web Services resource that you want your control - // scope to contain. - ComplianceResourceIds []*string `min:"1" type:"list"` - - // Describes whether the control scope includes one or more types of resources, - // such as EFS or RDS. - ComplianceResourceTypes []*string `type:"list"` +type DeleteFrameworkInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The tag key-value pair applied to those Amazon Web Services resources that - // you want to trigger an evaluation for a rule. A maximum of one key-value - // pair can be provided. The tag value is optional, but it cannot be an empty - // string. The structure to assign a tag is: [{"Key":"string","Value":"string"}]. - Tags map[string]*string `type:"map"` + // The unique name of a framework. + // + // FrameworkName is a required field + FrameworkName *string `location:"uri" locationName:"frameworkName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -9033,7 +13009,7 @@ type ControlScope 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 ControlScope) String() string { +func (s DeleteFrameworkInput) String() string { return awsutil.Prettify(s) } @@ -9042,15 +13018,18 @@ func (s ControlScope) 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 ControlScope) GoString() string { +func (s DeleteFrameworkInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ControlScope) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ControlScope"} - if s.ComplianceResourceIds != nil && len(s.ComplianceResourceIds) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ComplianceResourceIds", 1)) +func (s *DeleteFrameworkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteFrameworkInput"} + if s.FrameworkName == nil { + invalidParams.Add(request.NewErrParamRequired("FrameworkName")) + } + if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) } if invalidParams.Len() > 0 { @@ -9059,48 +13038,50 @@ func (s *ControlScope) Validate() error { return nil } -// SetComplianceResourceIds sets the ComplianceResourceIds field's value. -func (s *ControlScope) SetComplianceResourceIds(v []*string) *ControlScope { - s.ComplianceResourceIds = v +// SetFrameworkName sets the FrameworkName field's value. +func (s *DeleteFrameworkInput) SetFrameworkName(v string) *DeleteFrameworkInput { + s.FrameworkName = &v return s } -// SetComplianceResourceTypes sets the ComplianceResourceTypes field's value. -func (s *ControlScope) SetComplianceResourceTypes(v []*string) *ControlScope { - s.ComplianceResourceTypes = v - return s +type DeleteFrameworkOutput struct { + _ struct{} `type:"structure"` } -// SetTags sets the Tags field's value. -func (s *ControlScope) SetTags(v map[string]*string) *ControlScope { - s.Tags = v - return s +// 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 DeleteFrameworkOutput) String() string { + return awsutil.Prettify(s) } -// The details of the copy operation. -type CopyAction struct { - _ struct{} `type:"structure"` +// 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 DeleteFrameworkOutput) GoString() string { + return s.String() +} - // An Amazon Resource Name (ARN) that uniquely identifies the destination backup - // vault for the copied backup. For example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - // - // DestinationBackupVaultArn is a required field - DestinationBackupVaultArn *string `type:"string" required:"true"` +type DeleteRecoveryPointInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Contains an array of Transition objects specifying how long in days before - // a recovery point transitions to cold storage or is deleted. + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // - // Backups transitioned to cold storage must be stored in cold storage for a - // minimum of 90 days. Therefore, on the console, the “retention” setting - // must be 90 days greater than the “transition to cold after days” setting. - // The “transition to cold after days” setting cannot be changed after a - // backup has been transitioned to cold. + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. // - // Resource types that are able to be transitioned to cold storage are listed - // in the "Lifecycle to cold storage" section of the Feature availability by - // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) - // table. Backup ignores this expression for other resource types. - Lifecycle *Lifecycle `type:"structure"` + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` } // String returns the string representation. @@ -9108,7 +13089,7 @@ type CopyAction 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 CopyAction) String() string { +func (s DeleteRecoveryPointInput) String() string { return awsutil.Prettify(s) } @@ -9117,15 +13098,24 @@ func (s CopyAction) 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 CopyAction) GoString() string { +func (s DeleteRecoveryPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CopyAction) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CopyAction"} - if s.DestinationBackupVaultArn == nil { - invalidParams.Add(request.NewErrParamRequired("DestinationBackupVaultArn")) +func (s *DeleteRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRecoveryPointInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) } if invalidParams.Len() > 0 { @@ -9134,116 +13124,20 @@ func (s *CopyAction) Validate() error { return nil } -// SetDestinationBackupVaultArn sets the DestinationBackupVaultArn field's value. -func (s *CopyAction) SetDestinationBackupVaultArn(v string) *CopyAction { - s.DestinationBackupVaultArn = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DeleteRecoveryPointInput) SetBackupVaultName(v string) *DeleteRecoveryPointInput { + s.BackupVaultName = &v return s } -// SetLifecycle sets the Lifecycle field's value. -func (s *CopyAction) SetLifecycle(v *Lifecycle) *CopyAction { - s.Lifecycle = v +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DeleteRecoveryPointInput) SetRecoveryPointArn(v string) *DeleteRecoveryPointInput { + s.RecoveryPointArn = &v return s } -// Contains detailed information about a copy job. -type CopyJob struct { +type DeleteRecoveryPointOutput struct { _ struct{} `type:"structure"` - - // The account ID that owns the copy job. - AccountId *string `type:"string"` - - // The size, in bytes, of a copy job. - BackupSizeInBytes *int64 `type:"long"` - - // This returns the statistics of the included child (nested) copy jobs. - ChildJobsInState map[string]*int64 `type:"map"` - - // The date and time a copy job is completed, in Unix format and Coordinated - // Universal Time (UTC). The value of CompletionDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // This is the identifier of a resource within a composite group, such as nested - // (child) recovery point belonging to a composite (parent) stack. The ID is - // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) - // within a stack. - CompositeMemberIdentifier *string `type:"string"` - - // Uniquely identifies a copy job. - CopyJobId *string `type:"string"` - - // Contains information about the backup plan and rule that Backup used to initiate - // the recovery point backup. - CreatedBy *RecoveryPointCreator `type:"structure"` - - // The date and time a copy job is created, in Unix format and Coordinated Universal - // Time (UTC). The value of CreationDate is accurate to milliseconds. For example, - // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 - // AM. - CreationDate *time.Time `type:"timestamp"` - - // An Amazon Resource Name (ARN) that uniquely identifies a destination copy - // vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - DestinationBackupVaultArn *string `type:"string"` - - // An ARN that uniquely identifies a destination recovery point; for example, - // arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - DestinationRecoveryPointArn *string `type:"string"` - - // Specifies the IAM role ARN used to copy the target recovery point; for example, - // arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` - - // This is a boolean value indicating this is a parent (composite) copy job. - IsParent *bool `type:"boolean"` - - // This parameter is the job count for the specified message category. - // - // Example strings include AccessDenied, Success, and InvalidParameters. See - // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. - // - // The the value ANY returns count of all message categories. - // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum - MessageCategory *string `type:"string"` - - // This is the number of child (nested) copy jobs. - NumberOfChildJobs *int64 `type:"long"` - - // This uniquely identifies a request to Backup to copy a resource. The return - // will be the parent (composite) job ID. - ParentJobId *string `type:"string"` - - // The Amazon Web Services resource to be copied; for example, an Amazon Elastic - // Block Store (Amazon EBS) volume or an Amazon Relational Database Service - // (Amazon RDS) database. - ResourceArn *string `type:"string"` - - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` - - // The type of Amazon Web Services resource to be copied; for example, an Amazon - // Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. - ResourceType *string `type:"string"` - - // An Amazon Resource Name (ARN) that uniquely identifies a source copy vault; - // for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - SourceBackupVaultArn *string `type:"string"` - - // An ARN that uniquely identifies a source recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - SourceRecoveryPointArn *string `type:"string"` - - // The current state of a copy job. - State *string `type:"string" enum:"CopyJobState"` - - // A detailed message explaining the status of the job to copy a resource. - StatusMessage *string `type:"string"` } // String returns the string representation. @@ -9251,7 +13145,7 @@ type CopyJob 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 CopyJob) String() string { +func (s DeleteRecoveryPointOutput) String() string { return awsutil.Prettify(s) } @@ -9260,191 +13154,254 @@ func (s CopyJob) 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 CopyJob) GoString() string { +func (s DeleteRecoveryPointOutput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *CopyJob) SetAccountId(v string) *CopyJob { - s.AccountId = &v - return s +type DeleteReportPlanInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The unique name of a report plan. + // + // ReportPlanName is a required field + ReportPlanName *string `location:"uri" locationName:"reportPlanName" min:"1" type:"string" required:"true"` } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *CopyJob) SetBackupSizeInBytes(v int64) *CopyJob { - s.BackupSizeInBytes = &v - return s +// 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 DeleteReportPlanInput) String() string { + return awsutil.Prettify(s) } -// SetChildJobsInState sets the ChildJobsInState field's value. -func (s *CopyJob) SetChildJobsInState(v map[string]*int64) *CopyJob { - s.ChildJobsInState = v - return 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 DeleteReportPlanInput) GoString() string { + return s.String() } -// SetCompletionDate sets the CompletionDate field's value. -func (s *CopyJob) SetCompletionDate(v time.Time) *CopyJob { - s.CompletionDate = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteReportPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteReportPlanInput"} + if s.ReportPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) + } + if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. -func (s *CopyJob) SetCompositeMemberIdentifier(v string) *CopyJob { - s.CompositeMemberIdentifier = &v +// SetReportPlanName sets the ReportPlanName field's value. +func (s *DeleteReportPlanInput) SetReportPlanName(v string) *DeleteReportPlanInput { + s.ReportPlanName = &v return s } -// SetCopyJobId sets the CopyJobId field's value. -func (s *CopyJob) SetCopyJobId(v string) *CopyJob { - s.CopyJobId = &v - return s +type DeleteReportPlanOutput struct { + _ struct{} `type:"structure"` } -// SetCreatedBy sets the CreatedBy field's value. -func (s *CopyJob) SetCreatedBy(v *RecoveryPointCreator) *CopyJob { - s.CreatedBy = v - return s +// 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 DeleteReportPlanOutput) String() string { + return awsutil.Prettify(s) } -// SetCreationDate sets the CreationDate field's value. -func (s *CopyJob) SetCreationDate(v time.Time) *CopyJob { - s.CreationDate = &v - return 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 DeleteReportPlanOutput) GoString() string { + return s.String() } -// SetDestinationBackupVaultArn sets the DestinationBackupVaultArn field's value. -func (s *CopyJob) SetDestinationBackupVaultArn(v string) *CopyJob { - s.DestinationBackupVaultArn = &v - return s +type DeleteRestoreTestingPlanInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan you wish to delete. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` } -// SetDestinationRecoveryPointArn sets the DestinationRecoveryPointArn field's value. -func (s *CopyJob) SetDestinationRecoveryPointArn(v string) *CopyJob { - s.DestinationRecoveryPointArn = &v - return s +// 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 DeleteRestoreTestingPlanInput) String() string { + return awsutil.Prettify(s) } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *CopyJob) SetIamRoleArn(v string) *CopyJob { - s.IamRoleArn = &v - return 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 DeleteRestoreTestingPlanInput) GoString() string { + return s.String() } -// SetIsParent sets the IsParent field's value. -func (s *CopyJob) SetIsParent(v bool) *CopyJob { - s.IsParent = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRestoreTestingPlanInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetMessageCategory sets the MessageCategory field's value. -func (s *CopyJob) SetMessageCategory(v string) *CopyJob { - s.MessageCategory = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *DeleteRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *DeleteRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v return s } -// SetNumberOfChildJobs sets the NumberOfChildJobs field's value. -func (s *CopyJob) SetNumberOfChildJobs(v int64) *CopyJob { - s.NumberOfChildJobs = &v - return s +type DeleteRestoreTestingPlanOutput struct { + _ struct{} `type:"structure"` } -// SetParentJobId sets the ParentJobId field's value. -func (s *CopyJob) SetParentJobId(v string) *CopyJob { - s.ParentJobId = &v - return s +// 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 DeleteRestoreTestingPlanOutput) String() string { + return awsutil.Prettify(s) } -// SetResourceArn sets the ResourceArn field's value. -func (s *CopyJob) SetResourceArn(v string) *CopyJob { - s.ResourceArn = &v - return 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 DeleteRestoreTestingPlanOutput) GoString() string { + return s.String() } -// SetResourceName sets the ResourceName field's value. -func (s *CopyJob) SetResourceName(v string) *CopyJob { - s.ResourceName = &v - return s +type DeleteRestoreTestingSelectionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Required unique name of the restore testing plan that contains the restore + // testing selection you wish to delete. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // Required unique name of the restore testing selection you wish to delete. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" type:"string" required:"true"` } -// SetResourceType sets the ResourceType field's value. -func (s *CopyJob) SetResourceType(v string) *CopyJob { - s.ResourceType = &v - return s +// 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 DeleteRestoreTestingSelectionInput) String() string { + return awsutil.Prettify(s) } -// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. -func (s *CopyJob) SetSourceBackupVaultArn(v string) *CopyJob { - s.SourceBackupVaultArn = &v - return 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 DeleteRestoreTestingSelectionInput) GoString() string { + return s.String() } -// SetSourceRecoveryPointArn sets the SourceRecoveryPointArn field's value. -func (s *CopyJob) SetSourceRecoveryPointArn(v string) *CopyJob { - s.SourceRecoveryPointArn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetState sets the State field's value. -func (s *CopyJob) SetState(v string) *CopyJob { - s.State = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *DeleteRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *DeleteRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *CopyJob) SetStatusMessage(v string) *CopyJob { - s.StatusMessage = &v +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *DeleteRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *DeleteRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v return s } -// This is a summary of copy jobs created or running within the most recent -// 30 days. -// -// The returned summary may contain the following: Region, Account, State, RestourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. -type CopyJobSummary struct { +type DeleteRestoreTestingSelectionOutput struct { _ struct{} `type:"structure"` +} - // The account ID that owns the jobs within the summary. - AccountId *string `type:"string"` - - // The value as a number of jobs in a job summary. - Count *int64 `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 DeleteRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} - // The value of time in number format of a job end time. - // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - EndTime *time.Time `type:"timestamp"` +// 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 DeleteRestoreTestingSelectionOutput) GoString() string { + return s.String() +} - // This parameter is the job count for the specified message category. - // - // Example strings include AccessDenied, Success, and InvalidParameters. See - // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. - // - // The the value ANY returns count of all message categories. - // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - MessageCategory *string `type:"string"` +// A dependent Amazon Web Services service or resource returned an error to +// the Backup service, and the action cannot be completed. +type DependencyFailureException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // This is the Amazon Web Services Regions within the job summary. - Region *string `type:"string"` + Code_ *string `locationName:"Code" type:"string"` - // This value is the job count for the specified resource type. The request - // GetSupportedResourceTypes returns strings for supported resource types - ResourceType *string `type:"string"` + Context *string `type:"string"` - // The value of time in number format of a job start time. - // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - StartTime *time.Time `type:"timestamp"` + Message_ *string `locationName:"Message" type:"string"` - // This value is job count for jobs with the specified state. - State *string `type:"string" enum:"CopyJobStatus"` + Type *string `type:"string"` } // String returns the string representation. @@ -9452,7 +13409,7 @@ type CopyJobSummary 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 CopyJobSummary) String() string { +func (s DependencyFailureException) String() string { return awsutil.Prettify(s) } @@ -9461,83 +13418,55 @@ func (s CopyJobSummary) 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 CopyJobSummary) GoString() string { +func (s DependencyFailureException) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *CopyJobSummary) SetAccountId(v string) *CopyJobSummary { - s.AccountId = &v - return s -} - -// SetCount sets the Count field's value. -func (s *CopyJobSummary) SetCount(v int64) *CopyJobSummary { - s.Count = &v - return s +func newErrorDependencyFailureException(v protocol.ResponseMetadata) error { + return &DependencyFailureException{ + RespMetadata: v, + } } -// SetEndTime sets the EndTime field's value. -func (s *CopyJobSummary) SetEndTime(v time.Time) *CopyJobSummary { - s.EndTime = &v - return s +// Code returns the exception type name. +func (s *DependencyFailureException) Code() string { + return "DependencyFailureException" } -// SetMessageCategory sets the MessageCategory field's value. -func (s *CopyJobSummary) SetMessageCategory(v string) *CopyJobSummary { - s.MessageCategory = &v - return s +// Message returns the exception's message. +func (s *DependencyFailureException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetRegion sets the Region field's value. -func (s *CopyJobSummary) SetRegion(v string) *CopyJobSummary { - s.Region = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *DependencyFailureException) OrigErr() error { + return nil } -// SetResourceType sets the ResourceType field's value. -func (s *CopyJobSummary) SetResourceType(v string) *CopyJobSummary { - s.ResourceType = &v - return s +func (s *DependencyFailureException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetStartTime sets the StartTime field's value. -func (s *CopyJobSummary) SetStartTime(v time.Time) *CopyJobSummary { - s.StartTime = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *DependencyFailureException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetState sets the State field's value. -func (s *CopyJobSummary) SetState(v string) *CopyJobSummary { - s.State = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *DependencyFailureException) RequestID() string { + return s.RespMetadata.RequestID } -type CreateBackupPlanInput struct { - _ struct{} `type:"structure"` - - // Specifies the body of a backup plan. Includes a BackupPlanName and one or - // more sets of Rules. - // - // BackupPlan is a required field - BackupPlan *PlanInput `type:"structure" required:"true"` - - // To help organize your resources, you can assign your own metadata to the - // resources that you create. Each tag is a key-value pair. The specified tags - // are assigned to all backups created with this plan. - // - // BackupPlanTags is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateBackupPlanInput's - // String and GoString methods. - BackupPlanTags map[string]*string `type:"map" sensitive:"true"` +type DescribeBackupJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Identifies the request and allows failed requests to be retried without the - // risk of running the operation twice. If the request includes a CreatorRequestId - // that matches an existing backup plan, that plan is returned. This parameter - // is optional. + // Uniquely identifies a request to Backup to back up a resource. // - // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. - CreatorRequestId *string `type:"string"` + // BackupJobId is a required field + BackupJobId *string `location:"uri" locationName:"backupJobId" type:"string" required:"true"` } // String returns the string representation. @@ -9545,7 +13474,7 @@ type CreateBackupPlanInput 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 CreateBackupPlanInput) String() string { +func (s DescribeBackupJobInput) String() string { return awsutil.Prettify(s) } @@ -9554,20 +13483,18 @@ func (s CreateBackupPlanInput) 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 CreateBackupPlanInput) GoString() string { +func (s DescribeBackupJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateBackupPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateBackupPlanInput"} - if s.BackupPlan == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlan")) +func (s *DescribeBackupJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBackupJobInput"} + if s.BackupJobId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupJobId")) } - if s.BackupPlan != nil { - if err := s.BackupPlan.Validate(); err != nil { - invalidParams.AddNested("BackupPlan", err.(request.ErrInvalidParams)) - } + if s.BackupJobId != nil && len(*s.BackupJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupJobId", 1)) } if invalidParams.Len() > 0 { @@ -9576,47 +13503,132 @@ func (s *CreateBackupPlanInput) Validate() error { return nil } -// SetBackupPlan sets the BackupPlan field's value. -func (s *CreateBackupPlanInput) SetBackupPlan(v *PlanInput) *CreateBackupPlanInput { - s.BackupPlan = v +// SetBackupJobId sets the BackupJobId field's value. +func (s *DescribeBackupJobInput) SetBackupJobId(v string) *DescribeBackupJobInput { + s.BackupJobId = &v return s } -// SetBackupPlanTags sets the BackupPlanTags field's value. -func (s *CreateBackupPlanInput) SetBackupPlanTags(v map[string]*string) *CreateBackupPlanInput { - s.BackupPlanTags = v - return s -} +type DescribeBackupJobOutput struct { + _ struct{} `type:"structure"` -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *CreateBackupPlanInput) SetCreatorRequestId(v string) *CreateBackupPlanInput { - s.CreatorRequestId = &v - return s -} + // Returns the account ID that owns the backup job. + AccountId *string `type:"string"` -type CreateBackupPlanOutput struct { - _ struct{} `type:"structure"` + // Uniquely identifies a request to Backup to back up a resource. + BackupJobId *string `type:"string"` - // A list of BackupOptions settings for a resource type. This option is only - // available for Windows Volume Shadow Copy Service (VSS) backup jobs. - AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` + // Represents the options specified as part of backup plan or on-demand backup + // job. + BackupOptions map[string]*string `type:"map"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for - // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. - BackupPlanArn *string `type:"string"` + // The size, in bytes, of a backup. + BackupSizeInBytes *int64 `type:"long"` - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` + // Represents the actual backup type selected for a backup job. For example, + // if a successful Windows Volume Shadow Copy Service (VSS) backup was taken, + // BackupType returns "WindowsVSS". If BackupType is empty, then the backup + // type was a regular backup. + BackupType *string `type:"string"` - // The date and time that a backup plan is created, in Unix format and Coordinated + // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for + // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + BackupVaultName *string `type:"string"` + + // The size in bytes transferred to a backup vault at the time that the job + // status was queried. + BytesTransferred *int64 `type:"long"` + + // This returns the statistics of the included child (nested) backup jobs. + ChildJobsInState map[string]*int64 `type:"map"` + + // The date and time that a job to create a backup job is completed, in Unix + // format and Coordinated Universal Time (UTC). The value of CompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // Contains identifying information about the creation of a backup job, including + // the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId of the + // backup plan that is used to create it. + CreatedBy *RecoveryPointCreator `type:"structure"` + + // The date and time that a backup job is created, in Unix format and Coordinated // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. // For example, the value 1516925490.087 represents Friday, January 26, 2018 // 12:11:30.087 AM. CreationDate *time.Time `type:"timestamp"` - // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most - // 1,024 bytes long. They cannot be edited. - VersionId *string `type:"string"` + // The date and time that a job to back up resources is expected to be completed, + // in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + ExpectedCompletionDate *time.Time `type:"timestamp"` + + // Specifies the IAM role ARN used to create the target recovery point; for + // example, arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // This is the date a backup job was initiated. + InitiationDate *time.Time `type:"timestamp"` + + // This returns the boolean value that a backup job is a parent (composite) + // job. + IsParent *bool `type:"boolean"` + + // This is the job count for the specified message category. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + MessageCategory *string `type:"string"` + + // This returns the number of child (nested) backup jobs. + NumberOfChildJobs *int64 `type:"long"` + + // This returns the parent (composite) resource backup job ID. + ParentJobId *string `type:"string"` + + // Contains an estimated percentage that is complete of a job at the time the + // job status was queried. + PercentDone *string `type:"string"` + + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // An ARN that uniquely identifies a saved resource. The format of the ARN depends + // on the resource type. + ResourceArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `type:"string"` + + // Specifies the time in Unix format and Coordinated Universal Time (UTC) when + // a backup job must be started before it is canceled. The value is calculated + // by adding the start window to the scheduled time. So if the scheduled time + // were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 + // PM on the date specified. The value of StartBy is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + StartBy *time.Time `type:"timestamp"` + + // The current state of a backup job. + State *string `type:"string" enum:"JobState"` + + // A detailed message explaining the status of the job to back up a resource. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -9624,7 +13636,7 @@ type CreateBackupPlanOutput 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 CreateBackupPlanOutput) String() string { +func (s DescribeBackupJobOutput) String() string { return awsutil.Prettify(s) } @@ -9633,205 +13645,185 @@ func (s CreateBackupPlanOutput) 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 CreateBackupPlanOutput) GoString() string { +func (s DescribeBackupJobOutput) GoString() string { return s.String() } -// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. -func (s *CreateBackupPlanOutput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *CreateBackupPlanOutput { - s.AdvancedBackupSettings = v +// SetAccountId sets the AccountId field's value. +func (s *DescribeBackupJobOutput) SetAccountId(v string) *DescribeBackupJobOutput { + s.AccountId = &v return s } -// SetBackupPlanArn sets the BackupPlanArn field's value. -func (s *CreateBackupPlanOutput) SetBackupPlanArn(v string) *CreateBackupPlanOutput { - s.BackupPlanArn = &v +// SetBackupJobId sets the BackupJobId field's value. +func (s *DescribeBackupJobOutput) SetBackupJobId(v string) *DescribeBackupJobOutput { + s.BackupJobId = &v return s } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *CreateBackupPlanOutput) SetBackupPlanId(v string) *CreateBackupPlanOutput { - s.BackupPlanId = &v +// SetBackupOptions sets the BackupOptions field's value. +func (s *DescribeBackupJobOutput) SetBackupOptions(v map[string]*string) *DescribeBackupJobOutput { + s.BackupOptions = v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *CreateBackupPlanOutput) SetCreationDate(v time.Time) *CreateBackupPlanOutput { - s.CreationDate = &v +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *DescribeBackupJobOutput) SetBackupSizeInBytes(v int64) *DescribeBackupJobOutput { + s.BackupSizeInBytes = &v return s } -// SetVersionId sets the VersionId field's value. -func (s *CreateBackupPlanOutput) SetVersionId(v string) *CreateBackupPlanOutput { - s.VersionId = &v +// SetBackupType sets the BackupType field's value. +func (s *DescribeBackupJobOutput) SetBackupType(v string) *DescribeBackupJobOutput { + s.BackupType = &v return s } -type CreateBackupSelectionInput struct { - _ struct{} `type:"structure"` +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *DescribeBackupJobOutput) SetBackupVaultArn(v string) *DescribeBackupJobOutput { + s.BackupVaultArn = &v + return s +} - // Uniquely identifies the backup plan to be associated with the selection of - // resources. - // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DescribeBackupJobOutput) SetBackupVaultName(v string) *DescribeBackupJobOutput { + s.BackupVaultName = &v + return s +} - // Specifies the body of a request to assign a set of resources to a backup - // plan. - // - // BackupSelection is a required field - BackupSelection *Selection `type:"structure" required:"true"` +// SetBytesTransferred sets the BytesTransferred field's value. +func (s *DescribeBackupJobOutput) SetBytesTransferred(v int64) *DescribeBackupJobOutput { + s.BytesTransferred = &v + return s +} - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. This parameter - // is optional. - // - // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. - CreatorRequestId *string `type:"string"` +// SetChildJobsInState sets the ChildJobsInState field's value. +func (s *DescribeBackupJobOutput) SetChildJobsInState(v map[string]*int64) *DescribeBackupJobOutput { + s.ChildJobsInState = v + return s } -// 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 CreateBackupSelectionInput) String() string { - return awsutil.Prettify(s) +// SetCompletionDate sets the CompletionDate field's value. +func (s *DescribeBackupJobOutput) SetCompletionDate(v time.Time) *DescribeBackupJobOutput { + s.CompletionDate = &v + return 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 CreateBackupSelectionInput) GoString() string { - return s.String() +// SetCreatedBy sets the CreatedBy field's value. +func (s *DescribeBackupJobOutput) SetCreatedBy(v *RecoveryPointCreator) *DescribeBackupJobOutput { + s.CreatedBy = v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateBackupSelectionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateBackupSelectionInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } - if s.BackupSelection == nil { - invalidParams.Add(request.NewErrParamRequired("BackupSelection")) - } - if s.BackupSelection != nil { - if err := s.BackupSelection.Validate(); err != nil { - invalidParams.AddNested("BackupSelection", err.(request.ErrInvalidParams)) - } - } +// SetCreationDate sets the CreationDate field's value. +func (s *DescribeBackupJobOutput) SetCreationDate(v time.Time) *DescribeBackupJobOutput { + s.CreationDate = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetExpectedCompletionDate sets the ExpectedCompletionDate field's value. +func (s *DescribeBackupJobOutput) SetExpectedCompletionDate(v time.Time) *DescribeBackupJobOutput { + s.ExpectedCompletionDate = &v + return s } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *CreateBackupSelectionInput) SetBackupPlanId(v string) *CreateBackupSelectionInput { - s.BackupPlanId = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *DescribeBackupJobOutput) SetIamRoleArn(v string) *DescribeBackupJobOutput { + s.IamRoleArn = &v return s } -// SetBackupSelection sets the BackupSelection field's value. -func (s *CreateBackupSelectionInput) SetBackupSelection(v *Selection) *CreateBackupSelectionInput { - s.BackupSelection = v +// SetInitiationDate sets the InitiationDate field's value. +func (s *DescribeBackupJobOutput) SetInitiationDate(v time.Time) *DescribeBackupJobOutput { + s.InitiationDate = &v return s } -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *CreateBackupSelectionInput) SetCreatorRequestId(v string) *CreateBackupSelectionInput { - s.CreatorRequestId = &v +// SetIsParent sets the IsParent field's value. +func (s *DescribeBackupJobOutput) SetIsParent(v bool) *DescribeBackupJobOutput { + s.IsParent = &v return s } -type CreateBackupSelectionOutput struct { - _ struct{} `type:"structure"` +// SetMessageCategory sets the MessageCategory field's value. +func (s *DescribeBackupJobOutput) SetMessageCategory(v string) *DescribeBackupJobOutput { + s.MessageCategory = &v + return s +} - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` +// SetNumberOfChildJobs sets the NumberOfChildJobs field's value. +func (s *DescribeBackupJobOutput) SetNumberOfChildJobs(v int64) *DescribeBackupJobOutput { + s.NumberOfChildJobs = &v + return s +} - // The date and time a backup selection is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` +// SetParentJobId sets the ParentJobId field's value. +func (s *DescribeBackupJobOutput) SetParentJobId(v string) *DescribeBackupJobOutput { + s.ParentJobId = &v + return s +} - // Uniquely identifies the body of a request to assign a set of resources to - // a backup plan. - SelectionId *string `type:"string"` +// SetPercentDone sets the PercentDone field's value. +func (s *DescribeBackupJobOutput) SetPercentDone(v string) *DescribeBackupJobOutput { + s.PercentDone = &v + return s } -// 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 CreateBackupSelectionOutput) String() string { - return awsutil.Prettify(s) +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DescribeBackupJobOutput) SetRecoveryPointArn(v string) *DescribeBackupJobOutput { + s.RecoveryPointArn = &v + return 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 CreateBackupSelectionOutput) GoString() string { - return s.String() +// SetResourceArn sets the ResourceArn field's value. +func (s *DescribeBackupJobOutput) SetResourceArn(v string) *DescribeBackupJobOutput { + s.ResourceArn = &v + return s } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *CreateBackupSelectionOutput) SetBackupPlanId(v string) *CreateBackupSelectionOutput { - s.BackupPlanId = &v +// SetResourceName sets the ResourceName field's value. +func (s *DescribeBackupJobOutput) SetResourceName(v string) *DescribeBackupJobOutput { + s.ResourceName = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *CreateBackupSelectionOutput) SetCreationDate(v time.Time) *CreateBackupSelectionOutput { - s.CreationDate = &v +// SetResourceType sets the ResourceType field's value. +func (s *DescribeBackupJobOutput) SetResourceType(v string) *DescribeBackupJobOutput { + s.ResourceType = &v return s } -// SetSelectionId sets the SelectionId field's value. -func (s *CreateBackupSelectionOutput) SetSelectionId(v string) *CreateBackupSelectionOutput { - s.SelectionId = &v +// SetStartBy sets the StartBy field's value. +func (s *DescribeBackupJobOutput) SetStartBy(v time.Time) *DescribeBackupJobOutput { + s.StartBy = &v return s } -type CreateBackupVaultInput struct { - _ struct{} `type:"structure"` +// SetState sets the State field's value. +func (s *DescribeBackupJobOutput) SetState(v string) *DescribeBackupJobOutput { + s.State = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *DescribeBackupJobOutput) SetStatusMessage(v string) *DescribeBackupJobOutput { + s.StatusMessage = &v + return s +} + +type DescribeBackupVaultInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // This is the account ID of the specified backup vault. + BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` // The name of a logical container where backups are stored. Backup vaults are // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of letters, - // numbers, and hyphens. + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // // BackupVaultName is a required field BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - - // Metadata that you can assign to help organize the resources that you create. - // Each tag is a key-value pair. - // - // BackupVaultTags is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateBackupVaultInput's - // String and GoString methods. - BackupVaultTags map[string]*string `type:"map" sensitive:"true"` - - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. This parameter - // is optional. - // - // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. - CreatorRequestId *string `type:"string"` - - // The server-side encryption key that is used to protect your backups; for - // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. - EncryptionKeyArn *string `type:"string"` } // String returns the string representation. @@ -9839,7 +13831,7 @@ type CreateBackupVaultInput 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 CreateBackupVaultInput) String() string { +func (s DescribeBackupVaultInput) String() string { return awsutil.Prettify(s) } @@ -9848,13 +13840,13 @@ func (s CreateBackupVaultInput) 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 CreateBackupVaultInput) GoString() string { +func (s DescribeBackupVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateBackupVaultInput"} +func (s *DescribeBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeBackupVaultInput"} if s.BackupVaultName == nil { invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } @@ -9868,31 +13860,19 @@ func (s *CreateBackupVaultInput) Validate() error { return nil } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *CreateBackupVaultInput) SetBackupVaultName(v string) *CreateBackupVaultInput { - s.BackupVaultName = &v - return s -} - -// SetBackupVaultTags sets the BackupVaultTags field's value. -func (s *CreateBackupVaultInput) SetBackupVaultTags(v map[string]*string) *CreateBackupVaultInput { - s.BackupVaultTags = v - return s -} - -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *CreateBackupVaultInput) SetCreatorRequestId(v string) *CreateBackupVaultInput { - s.CreatorRequestId = &v +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *DescribeBackupVaultInput) SetBackupVaultAccountId(v string) *DescribeBackupVaultInput { + s.BackupVaultAccountId = &v return s } -// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. -func (s *CreateBackupVaultInput) SetEncryptionKeyArn(v string) *CreateBackupVaultInput { - s.EncryptionKeyArn = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DescribeBackupVaultInput) SetBackupVaultName(v string) *DescribeBackupVaultInput { + s.BackupVaultName = &v return s } -type CreateBackupVaultOutput struct { +type DescribeBackupVaultOutput struct { _ struct{} `type:"structure"` // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for @@ -9905,76 +13885,69 @@ type CreateBackupVaultOutput struct { // and hyphens. BackupVaultName *string `type:"string"` - // The date and time a backup vault is created, in Unix format and Coordinated + // The date and time that a backup vault is created, in Unix format and Coordinated // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. // For example, the value 1516925490.087 represents Friday, January 26, 2018 // 12:11:30.087 AM. CreationDate *time.Time `type:"timestamp"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s CreateBackupVaultOutput) 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 CreateBackupVaultOutput) GoString() string { - return s.String() -} -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *CreateBackupVaultOutput) SetBackupVaultArn(v string) *CreateBackupVaultOutput { - s.BackupVaultArn = &v - return s -} + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. This parameter + // is optional. If used, this parameter must contain 1 to 50 alphanumeric or + // '-_.' characters. + CreatorRequestId *string `type:"string"` -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *CreateBackupVaultOutput) SetBackupVaultName(v string) *CreateBackupVaultOutput { - s.BackupVaultName = &v - return s -} + // The server-side encryption key that is used to protect your backups; for + // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. + EncryptionKeyArn *string `type:"string"` -// SetCreationDate sets the CreationDate field's value. -func (s *CreateBackupVaultOutput) SetCreationDate(v time.Time) *CreateBackupVaultOutput { - s.CreationDate = &v - return s -} + // The date and time when Backup Vault Lock configuration cannot be changed + // or deleted. + // + // If you applied Vault Lock to your vault without specifying a lock date, you + // can change any of your Vault Lock settings, or delete Vault Lock from the + // vault entirely, at any time. + // + // This value is in Unix format, Coordinated Universal Time (UTC), and accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + LockDate *time.Time `type:"timestamp"` -type CreateFrameworkInput struct { - _ struct{} `type:"structure"` + // A Boolean that indicates whether Backup Vault Lock is currently protecting + // the backup vault. True means that Vault Lock causes delete or update operations + // on the recovery points stored in the vault to fail. + Locked *bool `type:"boolean"` - // A list of the controls that make up the framework. Each control in the list - // has a name, input parameters, and scope. + // The Backup Vault Lock setting that specifies the maximum retention period + // that the vault retains its recovery points. If this parameter is not specified, + // Vault Lock does not enforce a maximum retention period on the recovery points + // in the vault (allowing indefinite storage). // - // FrameworkControls is a required field - FrameworkControls []*FrameworkControl `type:"list" required:"true"` - - // An optional description of the framework with a maximum of 1,024 characters. - FrameworkDescription *string `type:"string"` + // If specified, any backup or copy job to the vault must have a lifecycle policy + // with a retention period equal to or shorter than the maximum retention period. + // If the job's retention period is longer than that maximum retention period, + // then the vault fails the backup or copy job, and you should either modify + // your lifecycle settings or use a different vault. Recovery points already + // stored in the vault prior to Vault Lock are not affected. + MaxRetentionDays *int64 `type:"long"` - // The unique name of the framework. The name must be between 1 and 256 characters, - // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), - // and underscores (_). + // The Backup Vault Lock setting that specifies the minimum retention period + // that the vault retains its recovery points. If this parameter is not specified, + // Vault Lock does not enforce a minimum retention period. // - // FrameworkName is a required field - FrameworkName *string `min:"1" type:"string" required:"true"` + // If specified, any backup or copy job to the vault must have a lifecycle policy + // with a retention period equal to or longer than the minimum retention period. + // If the job's retention period is shorter than that minimum retention period, + // then the vault fails the backup or copy job, and you should either modify + // your lifecycle settings or use a different vault. Recovery points already + // stored in the vault prior to Vault Lock are not affected. + MinRetentionDays *int64 `type:"long"` - // Metadata that you can assign to help organize the frameworks that you create. - // Each tag is a key-value pair. - FrameworkTags map[string]*string `type:"map"` + // The number of recovery points that are stored in a backup vault. + NumberOfRecoveryPoints *int64 `type:"long"` - // A customer-chosen string that you can use to distinguish between otherwise - // identical calls to CreateFrameworkInput. Retrying a successful request with - // the same idempotency token results in a success message with no action taken. - IdempotencyToken *string `type:"string" idempotencyToken:"true"` + // This is the type of vault described. + VaultType *string `type:"string" enum:"VaultType"` } // String returns the string representation. @@ -9982,7 +13955,7 @@ type CreateFrameworkInput 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 CreateFrameworkInput) String() string { +func (s DescribeBackupVaultOutput) String() string { return awsutil.Prettify(s) } @@ -9991,142 +13964,83 @@ func (s CreateFrameworkInput) 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 CreateFrameworkInput) GoString() string { +func (s DescribeBackupVaultOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateFrameworkInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateFrameworkInput"} - if s.FrameworkControls == nil { - invalidParams.Add(request.NewErrParamRequired("FrameworkControls")) - } - if s.FrameworkName == nil { - invalidParams.Add(request.NewErrParamRequired("FrameworkName")) - } - if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) - } - if s.FrameworkControls != nil { - for i, v := range s.FrameworkControls { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FrameworkControls", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetFrameworkControls sets the FrameworkControls field's value. -func (s *CreateFrameworkInput) SetFrameworkControls(v []*FrameworkControl) *CreateFrameworkInput { - s.FrameworkControls = v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *DescribeBackupVaultOutput) SetBackupVaultArn(v string) *DescribeBackupVaultOutput { + s.BackupVaultArn = &v return s } -// SetFrameworkDescription sets the FrameworkDescription field's value. -func (s *CreateFrameworkInput) SetFrameworkDescription(v string) *CreateFrameworkInput { - s.FrameworkDescription = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DescribeBackupVaultOutput) SetBackupVaultName(v string) *DescribeBackupVaultOutput { + s.BackupVaultName = &v return s } -// SetFrameworkName sets the FrameworkName field's value. -func (s *CreateFrameworkInput) SetFrameworkName(v string) *CreateFrameworkInput { - s.FrameworkName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *DescribeBackupVaultOutput) SetCreationDate(v time.Time) *DescribeBackupVaultOutput { + s.CreationDate = &v return s } -// SetFrameworkTags sets the FrameworkTags field's value. -func (s *CreateFrameworkInput) SetFrameworkTags(v map[string]*string) *CreateFrameworkInput { - s.FrameworkTags = v +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *DescribeBackupVaultOutput) SetCreatorRequestId(v string) *DescribeBackupVaultOutput { + s.CreatorRequestId = &v return s } -// SetIdempotencyToken sets the IdempotencyToken field's value. -func (s *CreateFrameworkInput) SetIdempotencyToken(v string) *CreateFrameworkInput { - s.IdempotencyToken = &v +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *DescribeBackupVaultOutput) SetEncryptionKeyArn(v string) *DescribeBackupVaultOutput { + s.EncryptionKeyArn = &v return s } -type CreateFrameworkOutput struct { - _ struct{} `type:"structure"` - - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - FrameworkArn *string `type:"string"` - - // The unique name of the framework. The name must be between 1 and 256 characters, - // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), - // and underscores (_). - FrameworkName *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 CreateFrameworkOutput) 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 CreateFrameworkOutput) GoString() string { - return s.String() +// SetLockDate sets the LockDate field's value. +func (s *DescribeBackupVaultOutput) SetLockDate(v time.Time) *DescribeBackupVaultOutput { + s.LockDate = &v + return s } -// SetFrameworkArn sets the FrameworkArn field's value. -func (s *CreateFrameworkOutput) SetFrameworkArn(v string) *CreateFrameworkOutput { - s.FrameworkArn = &v +// SetLocked sets the Locked field's value. +func (s *DescribeBackupVaultOutput) SetLocked(v bool) *DescribeBackupVaultOutput { + s.Locked = &v return s } -// SetFrameworkName sets the FrameworkName field's value. -func (s *CreateFrameworkOutput) SetFrameworkName(v string) *CreateFrameworkOutput { - s.FrameworkName = &v +// SetMaxRetentionDays sets the MaxRetentionDays field's value. +func (s *DescribeBackupVaultOutput) SetMaxRetentionDays(v int64) *DescribeBackupVaultOutput { + s.MaxRetentionDays = &v return s } -type CreateLegalHoldInput struct { - _ struct{} `type:"structure"` - - // This is the string description of the legal hold. - // - // Description is a required field - Description *string `type:"string" required:"true"` - - // This is a user-chosen string used to distinguish between otherwise identical - // calls. Retrying a successful request with the same idempotency token results - // in a success message with no action taken. - IdempotencyToken *string `type:"string"` +// SetMinRetentionDays sets the MinRetentionDays field's value. +func (s *DescribeBackupVaultOutput) SetMinRetentionDays(v int64) *DescribeBackupVaultOutput { + s.MinRetentionDays = &v + return s +} - // This specifies criteria to assign a set of resources, such as resource types - // or backup vaults. - RecoveryPointSelection *RecoveryPointSelection `type:"structure"` +// SetNumberOfRecoveryPoints sets the NumberOfRecoveryPoints field's value. +func (s *DescribeBackupVaultOutput) SetNumberOfRecoveryPoints(v int64) *DescribeBackupVaultOutput { + s.NumberOfRecoveryPoints = &v + return s +} - // Optional tags to include. A tag is a key-value pair you can use to manage, - // filter, and search for your resources. Allowed characters include UTF-8 letters, - // numbers, spaces, and the following characters: + - = . _ : /. - // - // Tags is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateLegalHoldInput's - // String and GoString methods. - Tags map[string]*string `type:"map" sensitive:"true"` +// SetVaultType sets the VaultType field's value. +func (s *DescribeBackupVaultOutput) SetVaultType(v string) *DescribeBackupVaultOutput { + s.VaultType = &v + return s +} - // This is the string title of the legal hold. +type DescribeCopyJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Uniquely identifies a copy job. // - // Title is a required field - Title *string `type:"string" required:"true"` + // CopyJobId is a required field + CopyJobId *string `location:"uri" locationName:"copyJobId" type:"string" required:"true"` } // String returns the string representation. @@ -10134,7 +14048,7 @@ type CreateLegalHoldInput 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 CreateLegalHoldInput) String() string { +func (s DescribeCopyJobInput) String() string { return awsutil.Prettify(s) } @@ -10143,23 +14057,18 @@ func (s CreateLegalHoldInput) 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 CreateLegalHoldInput) GoString() string { +func (s DescribeCopyJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLegalHoldInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLegalHoldInput"} - if s.Description == nil { - invalidParams.Add(request.NewErrParamRequired("Description")) - } - if s.Title == nil { - invalidParams.Add(request.NewErrParamRequired("Title")) +func (s *DescribeCopyJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeCopyJobInput"} + if s.CopyJobId == nil { + invalidParams.Add(request.NewErrParamRequired("CopyJobId")) } - if s.RecoveryPointSelection != nil { - if err := s.RecoveryPointSelection.Validate(); err != nil { - invalidParams.AddNested("RecoveryPointSelection", err.(request.ErrInvalidParams)) - } + if s.CopyJobId != nil && len(*s.CopyJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CopyJobId", 1)) } if invalidParams.Len() > 0 { @@ -10168,62 +14077,17 @@ func (s *CreateLegalHoldInput) Validate() error { return nil } -// SetDescription sets the Description field's value. -func (s *CreateLegalHoldInput) SetDescription(v string) *CreateLegalHoldInput { - s.Description = &v - return s -} - -// SetIdempotencyToken sets the IdempotencyToken field's value. -func (s *CreateLegalHoldInput) SetIdempotencyToken(v string) *CreateLegalHoldInput { - s.IdempotencyToken = &v - return s -} - -// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. -func (s *CreateLegalHoldInput) SetRecoveryPointSelection(v *RecoveryPointSelection) *CreateLegalHoldInput { - s.RecoveryPointSelection = v - return s -} - -// SetTags sets the Tags field's value. -func (s *CreateLegalHoldInput) SetTags(v map[string]*string) *CreateLegalHoldInput { - s.Tags = v - return s -} - -// SetTitle sets the Title field's value. -func (s *CreateLegalHoldInput) SetTitle(v string) *CreateLegalHoldInput { - s.Title = &v +// SetCopyJobId sets the CopyJobId field's value. +func (s *DescribeCopyJobInput) SetCopyJobId(v string) *DescribeCopyJobInput { + s.CopyJobId = &v return s } -type CreateLegalHoldOutput struct { +type DescribeCopyJobOutput struct { _ struct{} `type:"structure"` - // Time in number format when legal hold was created. - CreationDate *time.Time `type:"timestamp"` - - // This is the returned string description of the legal hold. - Description *string `type:"string"` - - // This is the ARN (Amazon Resource Number) of the created legal hold. - LegalHoldArn *string `type:"string"` - - // Legal hold ID returned for the specified legal hold on a recovery point. - LegalHoldId *string `type:"string"` - - // This specifies criteria to assign a set of resources, such as resource types - // or backup vaults. - RecoveryPointSelection *RecoveryPointSelection `type:"structure"` - - // This displays the status of the legal hold returned after creating the legal - // hold. Statuses can be ACTIVE, PENDING, CANCELED, CANCELING, or FAILED. - Status *string `type:"string" enum:"LegalHoldStatus"` - - // This is the string title of the legal hold returned after creating the legal - // hold. - Title *string `type:"string"` + // Contains detailed information about a copy job. + CopyJob *CopyJob `type:"structure"` } // String returns the string representation. @@ -10231,7 +14095,7 @@ type CreateLegalHoldOutput 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 CreateLegalHoldOutput) String() string { +func (s DescribeCopyJobOutput) String() string { return awsutil.Prettify(s) } @@ -10240,96 +14104,116 @@ func (s CreateLegalHoldOutput) 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 CreateLegalHoldOutput) GoString() string { +func (s DescribeCopyJobOutput) GoString() string { return s.String() } -// SetCreationDate sets the CreationDate field's value. -func (s *CreateLegalHoldOutput) SetCreationDate(v time.Time) *CreateLegalHoldOutput { - s.CreationDate = &v +// SetCopyJob sets the CopyJob field's value. +func (s *DescribeCopyJobOutput) SetCopyJob(v *CopyJob) *DescribeCopyJobOutput { + s.CopyJob = v return s } -// SetDescription sets the Description field's value. -func (s *CreateLegalHoldOutput) SetDescription(v string) *CreateLegalHoldOutput { - s.Description = &v - return s -} +type DescribeFrameworkInput struct { + _ struct{} `type:"structure" nopayload:"true"` -// SetLegalHoldArn sets the LegalHoldArn field's value. -func (s *CreateLegalHoldOutput) SetLegalHoldArn(v string) *CreateLegalHoldOutput { - s.LegalHoldArn = &v - return s + // The unique name of a framework. + // + // FrameworkName is a required field + FrameworkName *string `location:"uri" locationName:"frameworkName" min:"1" type:"string" required:"true"` } -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *CreateLegalHoldOutput) SetLegalHoldId(v string) *CreateLegalHoldOutput { - s.LegalHoldId = &v - return s +// 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 DescribeFrameworkInput) String() string { + return awsutil.Prettify(s) } -// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. -func (s *CreateLegalHoldOutput) SetRecoveryPointSelection(v *RecoveryPointSelection) *CreateLegalHoldOutput { - s.RecoveryPointSelection = v - return 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 DescribeFrameworkInput) GoString() string { + return s.String() } -// SetStatus sets the Status field's value. -func (s *CreateLegalHoldOutput) SetStatus(v string) *CreateLegalHoldOutput { - s.Status = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeFrameworkInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeFrameworkInput"} + if s.FrameworkName == nil { + invalidParams.Add(request.NewErrParamRequired("FrameworkName")) + } + if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetTitle sets the Title field's value. -func (s *CreateLegalHoldOutput) SetTitle(v string) *CreateLegalHoldOutput { - s.Title = &v +// SetFrameworkName sets the FrameworkName field's value. +func (s *DescribeFrameworkInput) SetFrameworkName(v string) *DescribeFrameworkInput { + s.FrameworkName = &v return s } -type CreateLogicallyAirGappedBackupVaultInput struct { +type DescribeFrameworkOutput struct { _ struct{} `type:"structure"` - // This is the name of the vault that is being created. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // The date and time that a framework is created, in ISO 8601 representation. + // The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 + // represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC. + CreationTime *time.Time `type:"timestamp"` - // These are the tags that will be included in the newly-created vault. + // The deployment status of a framework. The statuses are: // - // BackupVaultTags is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by CreateLogicallyAirGappedBackupVaultInput's - // String and GoString methods. - BackupVaultTags map[string]*string `type:"map" sensitive:"true"` + // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED + // | FAILED + DeploymentStatus *string `type:"string"` - // This is the ID of the creation request. - CreatorRequestId *string `type:"string"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + FrameworkArn *string `type:"string"` - // This is the setting that specifies the maximum retention period that the - // vault retains its recovery points. If this parameter is not specified, Backup - // does not enforce a maximum retention period on the recovery points in the - // vault (allowing indefinite storage). + // A list of the controls that make up the framework. Each control in the list + // has a name, input parameters, and scope. + FrameworkControls []*FrameworkControl `type:"list"` + + // An optional description of the framework. + FrameworkDescription *string `type:"string"` + + // The unique name of a framework. + FrameworkName *string `min:"1" type:"string"` + + // A framework consists of one or more controls. Each control governs a resource, + // such as backup plans, backup selections, backup vaults, or recovery points. + // You can also turn Config recording on or off for each resource. The statuses + // are: // - // If specified, any backup or copy job to the vault must have a lifecycle policy - // with a retention period equal to or shorter than the maximum retention period. - // If the job retention period is longer than that maximum retention period, - // then the vault fails the backup or copy job, and you should either modify - // your lifecycle settings or use a different vault. + // * ACTIVE when recording is turned on for all resources governed by the + // framework. // - // MaxRetentionDays is a required field - MaxRetentionDays *int64 `type:"long" required:"true"` - - // This setting specifies the minimum retention period that the vault retains - // its recovery points. If this parameter is not specified, no minimum retention - // period is enforced. + // * PARTIALLY_ACTIVE when recording is turned off for at least one resource + // governed by the framework. // - // If specified, any backup or copy job to the vault must have a lifecycle policy - // with a retention period equal to or longer than the minimum retention period. - // If a job retention period is shorter than that minimum retention period, - // then the vault fails the backup or copy job, and you should either modify - // your lifecycle settings or use a different vault. + // * INACTIVE when recording is turned off for all resources governed by + // the framework. // - // MinRetentionDays is a required field - MinRetentionDays *int64 `type:"long" required:"true"` + // * UNAVAILABLE when Backup is unable to validate recording status at this + // time. + FrameworkStatus *string `type:"string"` + + // A customer-chosen string that you can use to distinguish between otherwise + // identical calls to DescribeFrameworkOutput. Retrying a successful request + // with the same idempotency token results in a success message with no action + // taken. + IdempotencyToken *string `type:"string"` } // String returns the string representation. @@ -10337,7 +14221,7 @@ type CreateLogicallyAirGappedBackupVaultInput 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 CreateLogicallyAirGappedBackupVaultInput) String() string { +func (s DescribeFrameworkOutput) String() string { return awsutil.Prettify(s) } @@ -10346,83 +14230,60 @@ func (s CreateLogicallyAirGappedBackupVaultInput) 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 CreateLogicallyAirGappedBackupVaultInput) GoString() string { +func (s DescribeFrameworkOutput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLogicallyAirGappedBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLogicallyAirGappedBackupVaultInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.MaxRetentionDays == nil { - invalidParams.Add(request.NewErrParamRequired("MaxRetentionDays")) - } - if s.MinRetentionDays == nil { - invalidParams.Add(request.NewErrParamRequired("MinRetentionDays")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreationTime sets the CreationTime field's value. +func (s *DescribeFrameworkOutput) SetCreationTime(v time.Time) *DescribeFrameworkOutput { + s.CreationTime = &v + return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *CreateLogicallyAirGappedBackupVaultInput) SetBackupVaultName(v string) *CreateLogicallyAirGappedBackupVaultInput { - s.BackupVaultName = &v +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *DescribeFrameworkOutput) SetDeploymentStatus(v string) *DescribeFrameworkOutput { + s.DeploymentStatus = &v return s } -// SetBackupVaultTags sets the BackupVaultTags field's value. -func (s *CreateLogicallyAirGappedBackupVaultInput) SetBackupVaultTags(v map[string]*string) *CreateLogicallyAirGappedBackupVaultInput { - s.BackupVaultTags = v +// SetFrameworkArn sets the FrameworkArn field's value. +func (s *DescribeFrameworkOutput) SetFrameworkArn(v string) *DescribeFrameworkOutput { + s.FrameworkArn = &v return s } -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *CreateLogicallyAirGappedBackupVaultInput) SetCreatorRequestId(v string) *CreateLogicallyAirGappedBackupVaultInput { - s.CreatorRequestId = &v +// SetFrameworkControls sets the FrameworkControls field's value. +func (s *DescribeFrameworkOutput) SetFrameworkControls(v []*FrameworkControl) *DescribeFrameworkOutput { + s.FrameworkControls = v return s } -// SetMaxRetentionDays sets the MaxRetentionDays field's value. -func (s *CreateLogicallyAirGappedBackupVaultInput) SetMaxRetentionDays(v int64) *CreateLogicallyAirGappedBackupVaultInput { - s.MaxRetentionDays = &v +// SetFrameworkDescription sets the FrameworkDescription field's value. +func (s *DescribeFrameworkOutput) SetFrameworkDescription(v string) *DescribeFrameworkOutput { + s.FrameworkDescription = &v return s } -// SetMinRetentionDays sets the MinRetentionDays field's value. -func (s *CreateLogicallyAirGappedBackupVaultInput) SetMinRetentionDays(v int64) *CreateLogicallyAirGappedBackupVaultInput { - s.MinRetentionDays = &v +// SetFrameworkName sets the FrameworkName field's value. +func (s *DescribeFrameworkOutput) SetFrameworkName(v string) *DescribeFrameworkOutput { + s.FrameworkName = &v return s } -type CreateLogicallyAirGappedBackupVaultOutput struct { - _ struct{} `type:"structure"` - - // This is the ARN (Amazon Resource Name) of the vault being created. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Logically air-gapped - // backup vaults are identified by names that are unique to the account used - // to create them and the Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - BackupVaultName *string `type:"string"` +// SetFrameworkStatus sets the FrameworkStatus field's value. +func (s *DescribeFrameworkOutput) SetFrameworkStatus(v string) *DescribeFrameworkOutput { + s.FrameworkStatus = &v + return s +} - // The date and time when the vault was created. - // - // This value is in Unix format, Coordinated Universal Time (UTC), and accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` +// SetIdempotencyToken sets the IdempotencyToken field's value. +func (s *DescribeFrameworkOutput) SetIdempotencyToken(v string) *DescribeFrameworkOutput { + s.IdempotencyToken = &v + return s +} - // This is the current state of the vault. - VaultState *string `type:"string" enum:"VaultState"` +type DescribeGlobalSettingsInput struct { + _ struct{} `type:"structure" nopayload:"true"` } // String returns the string representation. @@ -10430,7 +14291,7 @@ type CreateLogicallyAirGappedBackupVaultOutput 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 CreateLogicallyAirGappedBackupVaultOutput) String() string { +func (s DescribeGlobalSettingsInput) String() string { return awsutil.Prettify(s) } @@ -10439,75 +14300,61 @@ func (s CreateLogicallyAirGappedBackupVaultOutput) 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 CreateLogicallyAirGappedBackupVaultOutput) GoString() string { +func (s DescribeGlobalSettingsInput) GoString() string { return s.String() } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *CreateLogicallyAirGappedBackupVaultOutput) SetBackupVaultArn(v string) *CreateLogicallyAirGappedBackupVaultOutput { - s.BackupVaultArn = &v - return s +type DescribeGlobalSettingsOutput struct { + _ struct{} `type:"structure"` + + // The status of the flag isCrossAccountBackupEnabled. + GlobalSettings map[string]*string `type:"map"` + + // The date and time that the flag isCrossAccountBackupEnabled was last updated. + // This update is in Unix format and Coordinated Universal Time (UTC). The value + // of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 + // represents Friday, January 26, 2018 12:11:30.087 AM. + LastUpdateTime *time.Time `type:"timestamp"` } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *CreateLogicallyAirGappedBackupVaultOutput) SetBackupVaultName(v string) *CreateLogicallyAirGappedBackupVaultOutput { - s.BackupVaultName = &v - return s +// 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 DescribeGlobalSettingsOutput) String() string { + return awsutil.Prettify(s) } -// SetCreationDate sets the CreationDate field's value. -func (s *CreateLogicallyAirGappedBackupVaultOutput) SetCreationDate(v time.Time) *CreateLogicallyAirGappedBackupVaultOutput { - s.CreationDate = &v - return 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 DescribeGlobalSettingsOutput) GoString() string { + return s.String() } -// SetVaultState sets the VaultState field's value. -func (s *CreateLogicallyAirGappedBackupVaultOutput) SetVaultState(v string) *CreateLogicallyAirGappedBackupVaultOutput { - s.VaultState = &v +// SetGlobalSettings sets the GlobalSettings field's value. +func (s *DescribeGlobalSettingsOutput) SetGlobalSettings(v map[string]*string) *DescribeGlobalSettingsOutput { + s.GlobalSettings = v return s } -type CreateReportPlanInput struct { - _ struct{} `type:"structure"` - - // A customer-chosen string that you can use to distinguish between otherwise - // identical calls to CreateReportPlanInput. Retrying a successful request with - // the same idempotency token results in a success message with no action taken. - IdempotencyToken *string `type:"string" idempotencyToken:"true"` - - // A structure that contains information about where and how to deliver your - // reports, specifically your Amazon S3 bucket name, S3 key prefix, and the - // formats of your reports. - // - // ReportDeliveryChannel is a required field - ReportDeliveryChannel *ReportDeliveryChannel `type:"structure" required:"true"` - - // An optional description of the report plan with a maximum of 1,024 characters. - ReportPlanDescription *string `type:"string"` - - // The unique name of the report plan. The name must be between 1 and 256 characters, - // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), - // and underscores (_). - // - // ReportPlanName is a required field - ReportPlanName *string `min:"1" type:"string" required:"true"` +// SetLastUpdateTime sets the LastUpdateTime field's value. +func (s *DescribeGlobalSettingsOutput) SetLastUpdateTime(v time.Time) *DescribeGlobalSettingsOutput { + s.LastUpdateTime = &v + return s +} - // Metadata that you can assign to help organize the report plans that you create. - // Each tag is a key-value pair. - ReportPlanTags map[string]*string `type:"map"` +type DescribeProtectedResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Identifies the report template for the report. Reports are built using a - // report template. The report templates are: - // - // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT - // | COPY_JOB_REPORT | RESTORE_JOB_REPORT - // - // If the report template is RESOURCE_COMPLIANCE_REPORT or CONTROL_COMPLIANCE_REPORT, - // this API resource also describes the report coverage by Amazon Web Services - // Regions and frameworks. + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. // - // ReportSetting is a required field - ReportSetting *ReportSetting `type:"structure" required:"true"` + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` } // String returns the string representation. @@ -10515,7 +14362,7 @@ type CreateReportPlanInput 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 CreateReportPlanInput) String() string { +func (s DescribeProtectedResourceInput) String() string { return awsutil.Prettify(s) } @@ -10524,34 +14371,18 @@ func (s CreateReportPlanInput) 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 CreateReportPlanInput) GoString() string { +func (s DescribeProtectedResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *CreateReportPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateReportPlanInput"} - if s.ReportDeliveryChannel == nil { - invalidParams.Add(request.NewErrParamRequired("ReportDeliveryChannel")) - } - if s.ReportPlanName == nil { - invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) - } - if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) - } - if s.ReportSetting == nil { - invalidParams.Add(request.NewErrParamRequired("ReportSetting")) - } - if s.ReportDeliveryChannel != nil { - if err := s.ReportDeliveryChannel.Validate(); err != nil { - invalidParams.AddNested("ReportDeliveryChannel", err.(request.ErrInvalidParams)) - } +func (s *DescribeProtectedResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeProtectedResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } - if s.ReportSetting != nil { - if err := s.ReportSetting.Validate(); err != nil { - invalidParams.AddNested("ReportSetting", err.(request.ErrInvalidParams)) - } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) } if invalidParams.Len() > 0 { @@ -10560,57 +14391,48 @@ func (s *CreateReportPlanInput) Validate() error { return nil } -// SetIdempotencyToken sets the IdempotencyToken field's value. -func (s *CreateReportPlanInput) SetIdempotencyToken(v string) *CreateReportPlanInput { - s.IdempotencyToken = &v - return s -} - -// SetReportDeliveryChannel sets the ReportDeliveryChannel field's value. -func (s *CreateReportPlanInput) SetReportDeliveryChannel(v *ReportDeliveryChannel) *CreateReportPlanInput { - s.ReportDeliveryChannel = v +// SetResourceArn sets the ResourceArn field's value. +func (s *DescribeProtectedResourceInput) SetResourceArn(v string) *DescribeProtectedResourceInput { + s.ResourceArn = &v return s } -// SetReportPlanDescription sets the ReportPlanDescription field's value. -func (s *CreateReportPlanInput) SetReportPlanDescription(v string) *CreateReportPlanInput { - s.ReportPlanDescription = &v - return s -} +type DescribeProtectedResourceOutput struct { + _ struct{} `type:"structure"` -// SetReportPlanName sets the ReportPlanName field's value. -func (s *CreateReportPlanInput) SetReportPlanName(v string) *CreateReportPlanInput { - s.ReportPlanName = &v - return s -} + // The date and time that a resource was last backed up, in Unix format and + // Coordinated Universal Time (UTC). The value of LastBackupTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + LastBackupTime *time.Time `type:"timestamp"` -// SetReportPlanTags sets the ReportPlanTags field's value. -func (s *CreateReportPlanInput) SetReportPlanTags(v map[string]*string) *CreateReportPlanInput { - s.ReportPlanTags = v - return s -} + // This is the ARN (Amazon Resource Name) of the backup vault that contains + // the most recent backup recovery point. + LastBackupVaultArn *string `type:"string"` -// SetReportSetting sets the ReportSetting field's value. -func (s *CreateReportPlanInput) SetReportSetting(v *ReportSetting) *CreateReportPlanInput { - s.ReportSetting = v - return s -} + // This is the ARN (Amazon Resource Name) of the most recent recovery point. + LastRecoveryPointArn *string `type:"string"` -type CreateReportPlanOutput struct { - _ struct{} `type:"structure"` + // This is the time in minutes the most recent restore job took to complete. + LatestRestoreExecutionTimeMinutes *int64 `type:"long"` - // The date and time a backup vault is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationTime *time.Time `type:"timestamp"` + // This is the creation date of the most recent restore job. + LatestRestoreJobCreationDate *time.Time `type:"timestamp"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - ReportPlanArn *string `type:"string"` + // This is the date the most recent recovery point was created. + LatestRestoreRecoveryPointCreationDate *time.Time `type:"timestamp"` - // The unique name of the report plan. - ReportPlanName *string `min:"1" type:"string"` + // An ARN that uniquely identifies a resource. The format of the ARN depends + // on the resource type. + ResourceArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // The type of Amazon Web Services resource saved as a recovery point; for example, + // an Amazon EBS volume or an Amazon RDS database. + ResourceType *string `type:"string"` } // String returns the string representation. @@ -10618,7 +14440,7 @@ type CreateReportPlanOutput 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 CreateReportPlanOutput) String() string { +func (s DescribeProtectedResourceOutput) String() string { return awsutil.Prettify(s) } @@ -10627,108 +14449,83 @@ func (s CreateReportPlanOutput) 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 CreateReportPlanOutput) GoString() string { +func (s DescribeProtectedResourceOutput) GoString() string { return s.String() } -// SetCreationTime sets the CreationTime field's value. -func (s *CreateReportPlanOutput) SetCreationTime(v time.Time) *CreateReportPlanOutput { - s.CreationTime = &v +// SetLastBackupTime sets the LastBackupTime field's value. +func (s *DescribeProtectedResourceOutput) SetLastBackupTime(v time.Time) *DescribeProtectedResourceOutput { + s.LastBackupTime = &v return s } -// SetReportPlanArn sets the ReportPlanArn field's value. -func (s *CreateReportPlanOutput) SetReportPlanArn(v string) *CreateReportPlanOutput { - s.ReportPlanArn = &v +// SetLastBackupVaultArn sets the LastBackupVaultArn field's value. +func (s *DescribeProtectedResourceOutput) SetLastBackupVaultArn(v string) *DescribeProtectedResourceOutput { + s.LastBackupVaultArn = &v return s } -// SetReportPlanName sets the ReportPlanName field's value. -func (s *CreateReportPlanOutput) SetReportPlanName(v string) *CreateReportPlanOutput { - s.ReportPlanName = &v +// SetLastRecoveryPointArn sets the LastRecoveryPointArn field's value. +func (s *DescribeProtectedResourceOutput) SetLastRecoveryPointArn(v string) *DescribeProtectedResourceOutput { + s.LastRecoveryPointArn = &v return s } -// This is a resource filter containing FromDate: DateTime and ToDate: DateTime. -// Both values are required. Future DateTime values are not permitted. -// -// The date and time are in Unix format and Coordinated Universal Time (UTC), -// and it is accurate to milliseconds ((milliseconds are optional). For example, -// the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 -// AM. -type DateRange struct { - _ struct{} `type:"structure"` - - // This value is the beginning date, inclusive. - // - // The date and time are in Unix format and Coordinated Universal Time (UTC), - // and it is accurate to milliseconds (milliseconds are optional). - // - // FromDate is a required field - FromDate *time.Time `type:"timestamp" required:"true"` - - // This value is the end date, inclusive. - // - // The date and time are in Unix format and Coordinated Universal Time (UTC), - // and it is accurate to milliseconds (milliseconds are optional). - // - // ToDate is a required field - ToDate *time.Time `type:"timestamp" required:"true"` +// SetLatestRestoreExecutionTimeMinutes sets the LatestRestoreExecutionTimeMinutes field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreExecutionTimeMinutes(v int64) *DescribeProtectedResourceOutput { + s.LatestRestoreExecutionTimeMinutes = &v + return s } -// 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 DateRange) String() string { - return awsutil.Prettify(s) +// SetLatestRestoreJobCreationDate sets the LatestRestoreJobCreationDate field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreJobCreationDate(v time.Time) *DescribeProtectedResourceOutput { + s.LatestRestoreJobCreationDate = &v + return 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 DateRange) GoString() string { - return s.String() +// SetLatestRestoreRecoveryPointCreationDate sets the LatestRestoreRecoveryPointCreationDate field's value. +func (s *DescribeProtectedResourceOutput) SetLatestRestoreRecoveryPointCreationDate(v time.Time) *DescribeProtectedResourceOutput { + s.LatestRestoreRecoveryPointCreationDate = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DateRange) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DateRange"} - if s.FromDate == nil { - invalidParams.Add(request.NewErrParamRequired("FromDate")) - } - if s.ToDate == nil { - invalidParams.Add(request.NewErrParamRequired("ToDate")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetResourceArn sets the ResourceArn field's value. +func (s *DescribeProtectedResourceOutput) SetResourceArn(v string) *DescribeProtectedResourceOutput { + s.ResourceArn = &v + return s } -// SetFromDate sets the FromDate field's value. -func (s *DateRange) SetFromDate(v time.Time) *DateRange { - s.FromDate = &v +// SetResourceName sets the ResourceName field's value. +func (s *DescribeProtectedResourceOutput) SetResourceName(v string) *DescribeProtectedResourceOutput { + s.ResourceName = &v return s } -// SetToDate sets the ToDate field's value. -func (s *DateRange) SetToDate(v time.Time) *DateRange { - s.ToDate = &v +// SetResourceType sets the ResourceType field's value. +func (s *DescribeProtectedResourceOutput) SetResourceType(v string) *DescribeProtectedResourceOutput { + s.ResourceType = &v return s } -type DeleteBackupPlanInput struct { +type DescribeRecoveryPointInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies a backup plan. + // This is the account ID of the specified backup vault. + BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` } // String returns the string representation. @@ -10736,7 +14533,7 @@ type DeleteBackupPlanInput 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 DeleteBackupPlanInput) String() string { +func (s DescribeRecoveryPointInput) String() string { return awsutil.Prettify(s) } @@ -10745,18 +14542,24 @@ func (s DeleteBackupPlanInput) 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 DeleteBackupPlanInput) GoString() string { +func (s DescribeRecoveryPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupPlanInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) +func (s *DescribeRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRecoveryPointInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) } if invalidParams.Len() > 0 { @@ -10765,31 +14568,167 @@ func (s *DeleteBackupPlanInput) Validate() error { return nil } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *DeleteBackupPlanInput) SetBackupPlanId(v string) *DeleteBackupPlanInput { - s.BackupPlanId = &v - return s -} +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *DescribeRecoveryPointInput) SetBackupVaultAccountId(v string) *DescribeRecoveryPointInput { + s.BackupVaultAccountId = &v + return s +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DescribeRecoveryPointInput) SetBackupVaultName(v string) *DescribeRecoveryPointInput { + s.BackupVaultName = &v + return s +} + +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DescribeRecoveryPointInput) SetRecoveryPointArn(v string) *DescribeRecoveryPointInput { + s.RecoveryPointArn = &v + return s +} + +type DescribeRecoveryPointOutput struct { + _ struct{} `type:"structure"` + + // The size, in bytes, of a backup. + BackupSizeInBytes *int64 `type:"long"` + + // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Region where they are created. They consist of lowercase letters, numbers, + // and hyphens. + BackupVaultName *string `type:"string"` + + // A CalculatedLifecycle object containing DeleteAt and MoveToColdStorageAt + // timestamps. + CalculatedLifecycle *CalculatedLifecycle `type:"structure"` + + // The date and time that a job to create a recovery point is completed, in + // Unix format and Coordinated Universal Time (UTC). The value of CompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // This is the identifier of a resource within a composite group, such as nested + // (child) recovery point belonging to a composite (parent) stack. The ID is + // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) + // within a stack. + CompositeMemberIdentifier *string `type:"string"` + + // Contains identifying information about the creation of a recovery point, + // including the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId + // of the backup plan used to create it. + CreatedBy *RecoveryPointCreator `type:"structure"` + + // The date and time that a recovery point is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // The server-side encryption key used to protect your backups; for example, + // arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. + EncryptionKeyArn *string `type:"string"` + + // Specifies the IAM role ARN used to create the target recovery point; for + // example, arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // A Boolean value that is returned as TRUE if the specified recovery point + // is encrypted, or FALSE if the recovery point is not encrypted. + IsEncrypted *bool `type:"boolean"` + + // This returns the boolean value that a recovery point is a parent (composite) + // job. + IsParent *bool `type:"boolean"` + + // The date and time that a recovery point was last restored, in Unix format + // and Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + LastRestoreTime *time.Time `type:"timestamp"` + + // The lifecycle defines when a protected resource is transitioned to cold storage + // and when it expires. Backup transitions and expires backups automatically + // according to the lifecycle that you define. + // + // Backups that are transitioned to cold storage must be stored in cold storage + // for a minimum of 90 days. Therefore, the “retention” setting must be + // 90 days greater than the “transition to cold after days” setting. The + // “transition to cold after days” setting cannot be changed after a backup + // has been transitioned to cold. + // + // Resource types that are able to be transitioned to cold storage are listed + // in the "Lifecycle to cold storage" section of the Feature availability by + // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) + // table. Backup ignores this expression for other resource types. + Lifecycle *Lifecycle `type:"structure"` + + // This is an ARN that uniquely identifies a parent (composite) recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + ParentRecoveryPointArn *string `type:"string"` + + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // An ARN that uniquely identifies a saved resource. The format of the ARN depends + // on the resource type. + ResourceArn *string `type:"string"` -type DeleteBackupPlanOutput struct { - _ struct{} `type:"structure"` + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for - // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. - BackupPlanArn *string `type:"string"` + // The type of Amazon Web Services resource to save as a recovery point; for + // example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational + // Database Service (Amazon RDS) database. + ResourceType *string `type:"string"` - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` + // An Amazon Resource Name (ARN) that uniquely identifies the source vault where + // the resource was originally backed up in; for example, arn:aws:backup:us-east-1:123456789012:vault:BackupVault. + // If the recovery is restored to the same Amazon Web Services account or Region, + // this value will be null. + SourceBackupVaultArn *string `type:"string"` - // The date and time a backup plan is deleted, in Unix format and Coordinated - // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - DeletionDate *time.Time `type:"timestamp"` + // A status code specifying the state of the recovery point. + // + // PARTIAL status indicates Backup could not create the recovery point before + // the backup window closed. To increase your backup plan window using the API, + // see UpdateBackupPlan (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateBackupPlan.html). + // You can also increase your backup plan window using the Console by choosing + // and editing your backup plan. + // + // EXPIRED status indicates that the recovery point has exceeded its retention + // period, but Backup lacks permission or is otherwise unable to delete it. + // To manually delete these recovery points, see Step 3: Delete the recovery + // points (https://docs.aws.amazon.com/aws-backup/latest/devguide/gs-cleanup-resources.html#cleanup-backups) + // in the Clean up resources section of Getting started. + // + // STOPPED status occurs on a continuous backup where a user has taken some + // action that causes the continuous backup to be disabled. This can be caused + // by the removal of permissions, turning off versioning, turning off events + // being sent to EventBridge, or disabling the EventBridge rules that are put + // in place by Backup. + // + // To resolve STOPPED status, ensure that all requested permissions are in place + // and that versioning is enabled on the S3 bucket. Once these conditions are + // met, the next instance of a backup rule running will result in a new continuous + // recovery point being created. The recovery points with STOPPED status do + // not need to be deleted. + // + // For SAP HANA on Amazon EC2 STOPPED status occurs due to user action, application + // misconfiguration, or backup failure. To ensure that future continuous backups + // succeed, refer to the recovery point status and check SAP HANA for details. + Status *string `type:"string" enum:"RecoveryPointStatus"` - // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most - // 1,024 bytes long. Version IDs cannot be edited. - VersionId *string `type:"string"` + // A status message explaining the status of the recovery point. + StatusMessage *string `type:"string"` + + // Specifies the storage class of the recovery point. Valid values are WARM + // or COLD. + StorageClass *string `type:"string" enum:"StorageClass"` } // String returns the string representation. @@ -10797,7 +14736,7 @@ type DeleteBackupPlanOutput 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 DeleteBackupPlanOutput) String() string { +func (s DescribeRecoveryPointOutput) String() string { return awsutil.Prettify(s) } @@ -10806,256 +14745,150 @@ func (s DeleteBackupPlanOutput) 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 DeleteBackupPlanOutput) GoString() string { +func (s DescribeRecoveryPointOutput) GoString() string { return s.String() } -// SetBackupPlanArn sets the BackupPlanArn field's value. -func (s *DeleteBackupPlanOutput) SetBackupPlanArn(v string) *DeleteBackupPlanOutput { - s.BackupPlanArn = &v +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *DescribeRecoveryPointOutput) SetBackupSizeInBytes(v int64) *DescribeRecoveryPointOutput { + s.BackupSizeInBytes = &v return s } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *DeleteBackupPlanOutput) SetBackupPlanId(v string) *DeleteBackupPlanOutput { - s.BackupPlanId = &v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *DescribeRecoveryPointOutput) SetBackupVaultArn(v string) *DescribeRecoveryPointOutput { + s.BackupVaultArn = &v return s } -// SetDeletionDate sets the DeletionDate field's value. -func (s *DeleteBackupPlanOutput) SetDeletionDate(v time.Time) *DeleteBackupPlanOutput { - s.DeletionDate = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DescribeRecoveryPointOutput) SetBackupVaultName(v string) *DescribeRecoveryPointOutput { + s.BackupVaultName = &v return s } -// SetVersionId sets the VersionId field's value. -func (s *DeleteBackupPlanOutput) SetVersionId(v string) *DeleteBackupPlanOutput { - s.VersionId = &v +// SetCalculatedLifecycle sets the CalculatedLifecycle field's value. +func (s *DescribeRecoveryPointOutput) SetCalculatedLifecycle(v *CalculatedLifecycle) *DescribeRecoveryPointOutput { + s.CalculatedLifecycle = v return s } -type DeleteBackupSelectionInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // Uniquely identifies a backup plan. - // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` - - // Uniquely identifies the body of a request to assign a set of resources to - // a backup plan. - // - // SelectionId is a required field - SelectionId *string `location:"uri" locationName:"selectionId" 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 DeleteBackupSelectionInput) 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 DeleteBackupSelectionInput) GoString() string { - return s.String() -} - -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupSelectionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupSelectionInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } - if s.SelectionId == nil { - invalidParams.Add(request.NewErrParamRequired("SelectionId")) - } - if s.SelectionId != nil && len(*s.SelectionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SelectionId", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *DeleteBackupSelectionInput) SetBackupPlanId(v string) *DeleteBackupSelectionInput { - s.BackupPlanId = &v +// SetCompletionDate sets the CompletionDate field's value. +func (s *DescribeRecoveryPointOutput) SetCompletionDate(v time.Time) *DescribeRecoveryPointOutput { + s.CompletionDate = &v return s } -// SetSelectionId sets the SelectionId field's value. -func (s *DeleteBackupSelectionInput) SetSelectionId(v string) *DeleteBackupSelectionInput { - s.SelectionId = &v +// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. +func (s *DescribeRecoveryPointOutput) SetCompositeMemberIdentifier(v string) *DescribeRecoveryPointOutput { + s.CompositeMemberIdentifier = &v return s } -type DeleteBackupSelectionOutput struct { - _ struct{} `type:"structure"` +// SetCreatedBy sets the CreatedBy field's value. +func (s *DescribeRecoveryPointOutput) SetCreatedBy(v *RecoveryPointCreator) *DescribeRecoveryPointOutput { + s.CreatedBy = v + return s } -// 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 DeleteBackupSelectionOutput) String() string { - return awsutil.Prettify(s) +// SetCreationDate sets the CreationDate field's value. +func (s *DescribeRecoveryPointOutput) SetCreationDate(v time.Time) *DescribeRecoveryPointOutput { + s.CreationDate = &v + return 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 DeleteBackupSelectionOutput) GoString() string { - return s.String() +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *DescribeRecoveryPointOutput) SetEncryptionKeyArn(v string) *DescribeRecoveryPointOutput { + s.EncryptionKeyArn = &v + return s } -type DeleteBackupVaultAccessPolicyInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *DescribeRecoveryPointOutput) SetIamRoleArn(v string) *DescribeRecoveryPointOutput { + s.IamRoleArn = &v + return s } -// 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 DeleteBackupVaultAccessPolicyInput) String() string { - return awsutil.Prettify(s) +// SetIsEncrypted sets the IsEncrypted field's value. +func (s *DescribeRecoveryPointOutput) SetIsEncrypted(v bool) *DescribeRecoveryPointOutput { + s.IsEncrypted = &v + return 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 DeleteBackupVaultAccessPolicyInput) GoString() string { - return s.String() +// SetIsParent sets the IsParent field's value. +func (s *DescribeRecoveryPointOutput) SetIsParent(v bool) *DescribeRecoveryPointOutput { + s.IsParent = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupVaultAccessPolicyInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultAccessPolicyInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetLastRestoreTime sets the LastRestoreTime field's value. +func (s *DescribeRecoveryPointOutput) SetLastRestoreTime(v time.Time) *DescribeRecoveryPointOutput { + s.LastRestoreTime = &v + return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DeleteBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *DeleteBackupVaultAccessPolicyInput { - s.BackupVaultName = &v +// SetLifecycle sets the Lifecycle field's value. +func (s *DescribeRecoveryPointOutput) SetLifecycle(v *Lifecycle) *DescribeRecoveryPointOutput { + s.Lifecycle = v return s } -type DeleteBackupVaultAccessPolicyOutput struct { - _ struct{} `type:"structure"` +// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. +func (s *DescribeRecoveryPointOutput) SetParentRecoveryPointArn(v string) *DescribeRecoveryPointOutput { + s.ParentRecoveryPointArn = &v + return s } -// 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 DeleteBackupVaultAccessPolicyOutput) String() string { - return awsutil.Prettify(s) +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DescribeRecoveryPointOutput) SetRecoveryPointArn(v string) *DescribeRecoveryPointOutput { + s.RecoveryPointArn = &v + return 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 DeleteBackupVaultAccessPolicyOutput) GoString() string { - return s.String() +// SetResourceArn sets the ResourceArn field's value. +func (s *DescribeRecoveryPointOutput) SetResourceArn(v string) *DescribeRecoveryPointOutput { + s.ResourceArn = &v + return s } -type DeleteBackupVaultInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` +// SetResourceName sets the ResourceName field's value. +func (s *DescribeRecoveryPointOutput) SetResourceName(v string) *DescribeRecoveryPointOutput { + s.ResourceName = &v + return s } -// 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 DeleteBackupVaultInput) String() string { - return awsutil.Prettify(s) +// SetResourceType sets the ResourceType field's value. +func (s *DescribeRecoveryPointOutput) SetResourceType(v string) *DescribeRecoveryPointOutput { + s.ResourceType = &v + return 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 DeleteBackupVaultInput) GoString() string { - return s.String() +// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. +func (s *DescribeRecoveryPointOutput) SetSourceBackupVaultArn(v string) *DescribeRecoveryPointOutput { + s.SourceBackupVaultArn = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } +// SetStatus sets the Status field's value. +func (s *DescribeRecoveryPointOutput) SetStatus(v string) *DescribeRecoveryPointOutput { + s.Status = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetStatusMessage sets the StatusMessage field's value. +func (s *DescribeRecoveryPointOutput) SetStatusMessage(v string) *DescribeRecoveryPointOutput { + s.StatusMessage = &v + return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DeleteBackupVaultInput) SetBackupVaultName(v string) *DeleteBackupVaultInput { - s.BackupVaultName = &v +// SetStorageClass sets the StorageClass field's value. +func (s *DescribeRecoveryPointOutput) SetStorageClass(v string) *DescribeRecoveryPointOutput { + s.StorageClass = &v return s } -type DeleteBackupVaultLockConfigurationInput struct { +type DescribeRegionSettingsInput struct { _ struct{} `type:"structure" nopayload:"true"` - - // The name of the backup vault from which to delete Backup Vault Lock. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -11063,7 +14896,7 @@ type DeleteBackupVaultLockConfigurationInput 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 DeleteBackupVaultLockConfigurationInput) String() string { +func (s DescribeRegionSettingsInput) String() string { return awsutil.Prettify(s) } @@ -11072,34 +14905,27 @@ func (s DeleteBackupVaultLockConfigurationInput) 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 DeleteBackupVaultLockConfigurationInput) GoString() string { +func (s DescribeRegionSettingsInput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupVaultLockConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultLockConfigurationInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} +type DescribeRegionSettingsOutput struct { + _ struct{} `type:"structure"` -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DeleteBackupVaultLockConfigurationInput) SetBackupVaultName(v string) *DeleteBackupVaultLockConfigurationInput { - s.BackupVaultName = &v - return s -} + // Returns whether Backup fully manages the backups for a resource type. + // + // For the benefits of full Backup management, see Full Backup management (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#full-management). + // + // For a list of resource types and whether each supports full Backup management, + // see the Feature availability by resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) + // table. + // + // If "DynamoDB":false, you can enable full Backup management for DynamoDB backup + // by enabling Backup's advanced DynamoDB backup features (https://docs.aws.amazon.com/aws-backup/latest/devguide/advanced-ddb-backup.html#advanced-ddb-backup-enable-cli). + ResourceTypeManagementPreference map[string]*bool `type:"map"` -type DeleteBackupVaultLockConfigurationOutput struct { - _ struct{} `type:"structure"` + // Returns a list of all services along with the opt-in preferences in the Region. + ResourceTypeOptInPreference map[string]*bool `type:"map"` } // String returns the string representation. @@ -11107,7 +14933,7 @@ type DeleteBackupVaultLockConfigurationOutput 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 DeleteBackupVaultLockConfigurationOutput) String() string { +func (s DescribeRegionSettingsOutput) String() string { return awsutil.Prettify(s) } @@ -11116,20 +14942,31 @@ func (s DeleteBackupVaultLockConfigurationOutput) 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 DeleteBackupVaultLockConfigurationOutput) GoString() string { +func (s DescribeRegionSettingsOutput) GoString() string { return s.String() } -type DeleteBackupVaultNotificationsInput struct { +// SetResourceTypeManagementPreference sets the ResourceTypeManagementPreference field's value. +func (s *DescribeRegionSettingsOutput) SetResourceTypeManagementPreference(v map[string]*bool) *DescribeRegionSettingsOutput { + s.ResourceTypeManagementPreference = v + return s +} + +// SetResourceTypeOptInPreference sets the ResourceTypeOptInPreference field's value. +func (s *DescribeRegionSettingsOutput) SetResourceTypeOptInPreference(v map[string]*bool) *DescribeRegionSettingsOutput { + s.ResourceTypeOptInPreference = v + return s +} + +type DescribeReportJobInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Region where they are created. They consist of lowercase letters, numbers, - // and hyphens. + // The identifier of the report job. A unique, randomly generated, Unicode, + // UTF-8 encoded string that is at most 1,024 bytes long. The report job ID + // cannot be edited. // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // ReportJobId is a required field + ReportJobId *string `location:"uri" locationName:"reportJobId" type:"string" required:"true"` } // String returns the string representation. @@ -11137,7 +14974,7 @@ type DeleteBackupVaultNotificationsInput 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 DeleteBackupVaultNotificationsInput) String() string { +func (s DescribeReportJobInput) String() string { return awsutil.Prettify(s) } @@ -11146,18 +14983,18 @@ func (s DeleteBackupVaultNotificationsInput) 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 DeleteBackupVaultNotificationsInput) GoString() string { +func (s DescribeReportJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteBackupVaultNotificationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteBackupVaultNotificationsInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) +func (s *DescribeReportJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeReportJobInput"} + if s.ReportJobId == nil { + invalidParams.Add(request.NewErrParamRequired("ReportJobId")) } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + if s.ReportJobId != nil && len(*s.ReportJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReportJobId", 1)) } if invalidParams.Len() > 0 { @@ -11166,14 +15003,19 @@ func (s *DeleteBackupVaultNotificationsInput) Validate() error { return nil } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DeleteBackupVaultNotificationsInput) SetBackupVaultName(v string) *DeleteBackupVaultNotificationsInput { - s.BackupVaultName = &v +// SetReportJobId sets the ReportJobId field's value. +func (s *DescribeReportJobInput) SetReportJobId(v string) *DescribeReportJobInput { + s.ReportJobId = &v return s } -type DeleteBackupVaultNotificationsOutput struct { +type DescribeReportJobOutput struct { _ struct{} `type:"structure"` + + // A list of information about a report job, including its completion and creation + // times, report destination, unique report job ID, Amazon Resource Name (ARN), + // report template, status, and status message. + ReportJob *ReportJob `type:"structure"` } // String returns the string representation. @@ -11181,7 +15023,7 @@ type DeleteBackupVaultNotificationsOutput 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 DeleteBackupVaultNotificationsOutput) String() string { +func (s DescribeReportJobOutput) String() string { return awsutil.Prettify(s) } @@ -11190,39 +15032,23 @@ func (s DeleteBackupVaultNotificationsOutput) 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 DeleteBackupVaultNotificationsOutput) GoString() string { +func (s DescribeReportJobOutput) GoString() string { return s.String() } -type DeleteBackupVaultOutput 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 DeleteBackupVaultOutput) 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 DeleteBackupVaultOutput) GoString() string { - return s.String() +// SetReportJob sets the ReportJob field's value. +func (s *DescribeReportJobOutput) SetReportJob(v *ReportJob) *DescribeReportJobOutput { + s.ReportJob = v + return s } -type DeleteFrameworkInput struct { +type DescribeReportPlanInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The unique name of a framework. + // The unique name of a report plan. // - // FrameworkName is a required field - FrameworkName *string `location:"uri" locationName:"frameworkName" min:"1" type:"string" required:"true"` + // ReportPlanName is a required field + ReportPlanName *string `location:"uri" locationName:"reportPlanName" min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -11230,7 +15056,7 @@ type DeleteFrameworkInput 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 DeleteFrameworkInput) String() string { +func (s DescribeReportPlanInput) String() string { return awsutil.Prettify(s) } @@ -11239,18 +15065,18 @@ func (s DeleteFrameworkInput) 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 DeleteFrameworkInput) GoString() string { +func (s DescribeReportPlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteFrameworkInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteFrameworkInput"} - if s.FrameworkName == nil { - invalidParams.Add(request.NewErrParamRequired("FrameworkName")) +func (s *DescribeReportPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeReportPlanInput"} + if s.ReportPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) } - if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) + if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) } if invalidParams.Len() > 0 { @@ -11259,14 +15085,20 @@ func (s *DeleteFrameworkInput) Validate() error { return nil } -// SetFrameworkName sets the FrameworkName field's value. -func (s *DeleteFrameworkInput) SetFrameworkName(v string) *DeleteFrameworkInput { - s.FrameworkName = &v +// SetReportPlanName sets the ReportPlanName field's value. +func (s *DescribeReportPlanInput) SetReportPlanName(v string) *DescribeReportPlanInput { + s.ReportPlanName = &v return s } -type DeleteFrameworkOutput struct { +type DescribeReportPlanOutput struct { _ struct{} `type:"structure"` + + // Returns details about the report plan that is specified by its name. These + // details include the report plan's Amazon Resource Name (ARN), description, + // settings, delivery channel, deployment status, creation time, and last attempted + // and successful run times. + ReportPlan *ReportPlan `type:"structure"` } // String returns the string representation. @@ -11274,7 +15106,7 @@ type DeleteFrameworkOutput 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 DeleteFrameworkOutput) String() string { +func (s DescribeReportPlanOutput) String() string { return awsutil.Prettify(s) } @@ -11283,26 +15115,23 @@ func (s DeleteFrameworkOutput) 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 DeleteFrameworkOutput) GoString() string { +func (s DescribeReportPlanOutput) GoString() string { return s.String() } -type DeleteRecoveryPointInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetReportPlan sets the ReportPlan field's value. +func (s *DescribeReportPlanOutput) SetReportPlan(v *ReportPlan) *DescribeReportPlanOutput { + s.ReportPlan = v + return s +} - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` +type DescribeRestoreJobInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // Uniquely identifies the job that restores a recovery point. // - // RecoveryPointArn is a required field - RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` + // RestoreJobId is a required field + RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` } // String returns the string representation. @@ -11310,7 +15139,7 @@ type DeleteRecoveryPointInput 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 DeleteRecoveryPointInput) String() string { +func (s DescribeRestoreJobInput) String() string { return awsutil.Prettify(s) } @@ -11319,24 +15148,18 @@ func (s DeleteRecoveryPointInput) 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 DeleteRecoveryPointInput) GoString() string { +func (s DescribeRestoreJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteRecoveryPointInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteRecoveryPointInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.RecoveryPointArn == nil { - invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) +func (s *DescribeRestoreJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRestoreJobInput"} + if s.RestoreJobId == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) } - if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) + if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) } if invalidParams.Len() > 0 { @@ -11345,20 +15168,85 @@ func (s *DeleteRecoveryPointInput) Validate() error { return nil } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DeleteRecoveryPointInput) SetBackupVaultName(v string) *DeleteRecoveryPointInput { - s.BackupVaultName = &v - return s -} - -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DeleteRecoveryPointInput) SetRecoveryPointArn(v string) *DeleteRecoveryPointInput { - s.RecoveryPointArn = &v +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *DescribeRestoreJobInput) SetRestoreJobId(v string) *DescribeRestoreJobInput { + s.RestoreJobId = &v return s } -type DeleteRecoveryPointOutput struct { +type DescribeRestoreJobOutput struct { _ struct{} `type:"structure"` + + // Returns the account ID that owns the restore job. + AccountId *string `type:"string"` + + // The size, in bytes, of the restored resource. + BackupSizeInBytes *int64 `type:"long"` + + // The date and time that a job to restore a recovery point is completed, in + // Unix format and Coordinated Universal Time (UTC). The value of CompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // Contains identifying information about the creation of a restore job. + CreatedBy *RestoreJobCreator `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource whose recovery + // point is being restored. The format of the ARN depends on the resource type + // of the backed-up resource. + CreatedResourceArn *string `type:"string"` + + // The date and time that a restore job is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // This notes the status of the data generated by the restore test. The status + // may be Deleting, Failed, or Successful. + DeletionStatus *string `type:"string" enum:"RestoreDeletionStatus"` + + // This describes the restore job deletion status. + DeletionStatusMessage *string `type:"string"` + + // The amount of time in minutes that a job restoring a recovery point is expected + // to take. + ExpectedCompletionTimeMinutes *int64 `type:"long"` + + // Specifies the IAM role ARN used to create the target recovery point; for + // example, arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // Contains an estimated percentage that is complete of a job at the time the + // job status was queried. + PercentDone *string `type:"string"` + + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // This is the creation date of the recovery point made by the specifed restore + // job. + RecoveryPointCreationDate *time.Time `type:"timestamp"` + + // Returns metadata associated with a restore job listed by resource type. + ResourceType *string `type:"string"` + + // Uniquely identifies the job that restores a recovery point. + RestoreJobId *string `type:"string"` + + // Status code specifying the state of the job that is initiated by Backup to + // restore a recovery point. + Status *string `type:"string" enum:"RestoreJobStatus"` + + // A message showing the status of a job to restore a recovery point. + StatusMessage *string `type:"string"` + + // This is the status of validation run on the indicated restore job. + ValidationStatus *string `type:"string" enum:"RestoreValidationStatus"` + + // This describes the status of validation run on the indicated restore job. + ValidationStatusMessage *string `type:"string"` } // String returns the string representation. @@ -11366,7 +15254,7 @@ type DeleteRecoveryPointOutput 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 DeleteRecoveryPointOutput) String() string { +func (s DescribeRestoreJobOutput) String() string { return awsutil.Prettify(s) } @@ -11375,61 +15263,140 @@ func (s DeleteRecoveryPointOutput) 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 DeleteRecoveryPointOutput) GoString() string { +func (s DescribeRestoreJobOutput) GoString() string { return s.String() } -type DeleteReportPlanInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetAccountId sets the AccountId field's value. +func (s *DescribeRestoreJobOutput) SetAccountId(v string) *DescribeRestoreJobOutput { + s.AccountId = &v + return s +} - // The unique name of a report plan. - // - // ReportPlanName is a required field - ReportPlanName *string `location:"uri" locationName:"reportPlanName" min:"1" type:"string" required:"true"` +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *DescribeRestoreJobOutput) SetBackupSizeInBytes(v int64) *DescribeRestoreJobOutput { + s.BackupSizeInBytes = &v + return s } -// 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 DeleteReportPlanInput) String() string { - return awsutil.Prettify(s) +// SetCompletionDate sets the CompletionDate field's value. +func (s *DescribeRestoreJobOutput) SetCompletionDate(v time.Time) *DescribeRestoreJobOutput { + s.CompletionDate = &v + return 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 DeleteReportPlanInput) GoString() string { - return s.String() +// SetCreatedBy sets the CreatedBy field's value. +func (s *DescribeRestoreJobOutput) SetCreatedBy(v *RestoreJobCreator) *DescribeRestoreJobOutput { + s.CreatedBy = v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteReportPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteReportPlanInput"} - if s.ReportPlanName == nil { - invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) - } - if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) - } +// SetCreatedResourceArn sets the CreatedResourceArn field's value. +func (s *DescribeRestoreJobOutput) SetCreatedResourceArn(v string) *DescribeRestoreJobOutput { + s.CreatedResourceArn = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreationDate sets the CreationDate field's value. +func (s *DescribeRestoreJobOutput) SetCreationDate(v time.Time) *DescribeRestoreJobOutput { + s.CreationDate = &v + return s } -// SetReportPlanName sets the ReportPlanName field's value. -func (s *DeleteReportPlanInput) SetReportPlanName(v string) *DeleteReportPlanInput { - s.ReportPlanName = &v +// SetDeletionStatus sets the DeletionStatus field's value. +func (s *DescribeRestoreJobOutput) SetDeletionStatus(v string) *DescribeRestoreJobOutput { + s.DeletionStatus = &v + return s +} + +// SetDeletionStatusMessage sets the DeletionStatusMessage field's value. +func (s *DescribeRestoreJobOutput) SetDeletionStatusMessage(v string) *DescribeRestoreJobOutput { + s.DeletionStatusMessage = &v + return s +} + +// SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. +func (s *DescribeRestoreJobOutput) SetExpectedCompletionTimeMinutes(v int64) *DescribeRestoreJobOutput { + s.ExpectedCompletionTimeMinutes = &v + return s +} + +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *DescribeRestoreJobOutput) SetIamRoleArn(v string) *DescribeRestoreJobOutput { + s.IamRoleArn = &v + return s +} + +// SetPercentDone sets the PercentDone field's value. +func (s *DescribeRestoreJobOutput) SetPercentDone(v string) *DescribeRestoreJobOutput { + s.PercentDone = &v + return s +} + +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DescribeRestoreJobOutput) SetRecoveryPointArn(v string) *DescribeRestoreJobOutput { + s.RecoveryPointArn = &v + return s +} + +// SetRecoveryPointCreationDate sets the RecoveryPointCreationDate field's value. +func (s *DescribeRestoreJobOutput) SetRecoveryPointCreationDate(v time.Time) *DescribeRestoreJobOutput { + s.RecoveryPointCreationDate = &v return s } -type DeleteReportPlanOutput struct { - _ struct{} `type:"structure"` +// SetResourceType sets the ResourceType field's value. +func (s *DescribeRestoreJobOutput) SetResourceType(v string) *DescribeRestoreJobOutput { + s.ResourceType = &v + return s +} + +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *DescribeRestoreJobOutput) SetRestoreJobId(v string) *DescribeRestoreJobOutput { + s.RestoreJobId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DescribeRestoreJobOutput) SetStatus(v string) *DescribeRestoreJobOutput { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *DescribeRestoreJobOutput) SetStatusMessage(v string) *DescribeRestoreJobOutput { + s.StatusMessage = &v + return s +} + +// SetValidationStatus sets the ValidationStatus field's value. +func (s *DescribeRestoreJobOutput) SetValidationStatus(v string) *DescribeRestoreJobOutput { + s.ValidationStatus = &v + return s +} + +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *DescribeRestoreJobOutput) SetValidationStatusMessage(v string) *DescribeRestoreJobOutput { + s.ValidationStatusMessage = &v + return s +} + +type DisassociateRecoveryPointFromParentInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // This is the name of a logical container where the child (nested) recovery + // point is stored. Backup vaults are identified by names that are unique to + // the account used to create them and the Amazon Web Services Region where + // they are created. They consist of lowercase letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // This is the Amazon Resource Name (ARN) that uniquely identifies the child + // (nested) recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` } // String returns the string representation. @@ -11437,7 +15404,7 @@ type DeleteReportPlanOutput 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 DeleteReportPlanOutput) String() string { +func (s DisassociateRecoveryPointFromParentInput) String() string { return awsutil.Prettify(s) } @@ -11446,23 +15413,46 @@ func (s DeleteReportPlanOutput) 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 DeleteReportPlanOutput) GoString() string { +func (s DisassociateRecoveryPointFromParentInput) GoString() string { return s.String() } -// A dependent Amazon Web Services service or resource returned an error to -// the Backup service, and the action cannot be completed. -type DependencyFailureException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisassociateRecoveryPointFromParentInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateRecoveryPointFromParentInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) + } - Code_ *string `locationName:"Code" type:"string"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} - Context *string `type:"string"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DisassociateRecoveryPointFromParentInput) SetBackupVaultName(v string) *DisassociateRecoveryPointFromParentInput { + s.BackupVaultName = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DisassociateRecoveryPointFromParentInput) SetRecoveryPointArn(v string) *DisassociateRecoveryPointFromParentInput { + s.RecoveryPointArn = &v + return s +} - Type *string `type:"string"` +type DisassociateRecoveryPointFromParentOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation. @@ -11470,7 +15460,7 @@ type DependencyFailureException 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 DependencyFailureException) String() string { +func (s DisassociateRecoveryPointFromParentOutput) String() string { return awsutil.Prettify(s) } @@ -11479,55 +15469,23 @@ func (s DependencyFailureException) 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 DependencyFailureException) GoString() string { +func (s DisassociateRecoveryPointFromParentOutput) GoString() string { return s.String() } -func newErrorDependencyFailureException(v protocol.ResponseMetadata) error { - return &DependencyFailureException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *DependencyFailureException) Code() string { - return "DependencyFailureException" -} - -// Message returns the exception's message. -func (s *DependencyFailureException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *DependencyFailureException) OrigErr() error { - return nil -} - -func (s *DependencyFailureException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *DependencyFailureException) StatusCode() int { - return s.RespMetadata.StatusCode -} - -// RequestID returns the service's response RequestID for request. -func (s *DependencyFailureException) RequestID() string { - return s.RespMetadata.RequestID -} - -type DescribeBackupJobInput struct { +type DisassociateRecoveryPointInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies a request to Backup to back up a resource. + // The unique name of an Backup vault. // - // BackupJobId is a required field - BackupJobId *string `location:"uri" locationName:"backupJobId" type:"string" required:"true"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies an Backup recovery + // point. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` } // String returns the string representation. @@ -11535,7 +15493,7 @@ type DescribeBackupJobInput 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 DescribeBackupJobInput) String() string { +func (s DisassociateRecoveryPointInput) String() string { return awsutil.Prettify(s) } @@ -11544,18 +15502,24 @@ func (s DescribeBackupJobInput) 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 DescribeBackupJobInput) GoString() string { +func (s DisassociateRecoveryPointInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeBackupJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeBackupJobInput"} - if s.BackupJobId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupJobId")) +func (s *DisassociateRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisassociateRecoveryPointInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.BackupJobId != nil && len(*s.BackupJobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupJobId", 1)) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) } if invalidParams.Len() > 0 { @@ -11564,129 +15528,20 @@ func (s *DescribeBackupJobInput) Validate() error { return nil } -// SetBackupJobId sets the BackupJobId field's value. -func (s *DescribeBackupJobInput) SetBackupJobId(v string) *DescribeBackupJobInput { - s.BackupJobId = &v - return s -} - -type DescribeBackupJobOutput struct { - _ struct{} `type:"structure"` - - // Returns the account ID that owns the backup job. - AccountId *string `type:"string"` - - // Uniquely identifies a request to Backup to back up a resource. - BackupJobId *string `type:"string"` - - // Represents the options specified as part of backup plan or on-demand backup - // job. - BackupOptions map[string]*string `type:"map"` - - // The size, in bytes, of a backup. - BackupSizeInBytes *int64 `type:"long"` - - // Represents the actual backup type selected for a backup job. For example, - // if a successful Windows Volume Shadow Copy Service (VSS) backup was taken, - // BackupType returns "WindowsVSS". If BackupType is empty, then the backup - // type was a regular backup. - BackupType *string `type:"string"` - - // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for - // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - BackupVaultName *string `type:"string"` - - // The size in bytes transferred to a backup vault at the time that the job - // status was queried. - BytesTransferred *int64 `type:"long"` - - // This returns the statistics of the included child (nested) backup jobs. - ChildJobsInState map[string]*int64 `type:"map"` - - // The date and time that a job to create a backup job is completed, in Unix - // format and Coordinated Universal Time (UTC). The value of CompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // Contains identifying information about the creation of a backup job, including - // the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId of the - // backup plan that is used to create it. - CreatedBy *RecoveryPointCreator `type:"structure"` - - // The date and time that a backup job is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // The date and time that a job to back up resources is expected to be completed, - // in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - ExpectedCompletionDate *time.Time `type:"timestamp"` - - // Specifies the IAM role ARN used to create the target recovery point; for - // example, arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` - - // This returns the boolean value that a backup job is a parent (composite) - // job. - IsParent *bool `type:"boolean"` - - // This is the job count for the specified message category. - // - // Example strings may include AccessDenied, Success, and InvalidParameters. - // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. - MessageCategory *string `type:"string"` - - // This returns the number of child (nested) backup jobs. - NumberOfChildJobs *int64 `type:"long"` - - // This returns the parent (composite) resource backup job ID. - ParentJobId *string `type:"string"` - - // Contains an estimated percentage that is complete of a job at the time the - // job status was queried. - PercentDone *string `type:"string"` - - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` - - // An ARN that uniquely identifies a saved resource. The format of the ARN depends - // on the resource type. - ResourceArn *string `type:"string"` - - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` - - // The type of Amazon Web Services resource to be backed up; for example, an - // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. - ResourceType *string `type:"string"` - - // Specifies the time in Unix format and Coordinated Universal Time (UTC) when - // a backup job must be started before it is canceled. The value is calculated - // by adding the start window to the scheduled time. So if the scheduled time - // were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 - // PM on the date specified. The value of StartBy is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - StartBy *time.Time `type:"timestamp"` - - // The current state of a backup job. - State *string `type:"string" enum:"JobState"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *DisassociateRecoveryPointInput) SetBackupVaultName(v string) *DisassociateRecoveryPointInput { + s.BackupVaultName = &v + return s +} - // A detailed message explaining the status of the job to back up a resource. - StatusMessage *string `type:"string"` +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *DisassociateRecoveryPointInput) SetRecoveryPointArn(v string) *DisassociateRecoveryPointInput { + s.RecoveryPointArn = &v + return s +} + +type DisassociateRecoveryPointOutput struct { + _ struct{} `type:"structure"` } // String returns the string representation. @@ -11694,7 +15549,7 @@ type DescribeBackupJobOutput 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 DescribeBackupJobOutput) String() string { +func (s DisassociateRecoveryPointOutput) String() string { return awsutil.Prettify(s) } @@ -11703,179 +15558,260 @@ func (s DescribeBackupJobOutput) 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 DescribeBackupJobOutput) GoString() string { +func (s DisassociateRecoveryPointOutput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *DescribeBackupJobOutput) SetAccountId(v string) *DescribeBackupJobOutput { - s.AccountId = &v - return s -} +type ExportBackupPlanTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` -// SetBackupJobId sets the BackupJobId field's value. -func (s *DescribeBackupJobOutput) SetBackupJobId(v string) *DescribeBackupJobOutput { - s.BackupJobId = &v - return s + // Uniquely identifies a backup plan. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` } -// SetBackupOptions sets the BackupOptions field's value. -func (s *DescribeBackupJobOutput) SetBackupOptions(v map[string]*string) *DescribeBackupJobOutput { - s.BackupOptions = v - return s +// 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 ExportBackupPlanTemplateInput) String() string { + return awsutil.Prettify(s) } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *DescribeBackupJobOutput) SetBackupSizeInBytes(v int64) *DescribeBackupJobOutput { - s.BackupSizeInBytes = &v - return 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 ExportBackupPlanTemplateInput) GoString() string { + return s.String() } -// SetBackupType sets the BackupType field's value. -func (s *DescribeBackupJobOutput) SetBackupType(v string) *DescribeBackupJobOutput { - s.BackupType = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExportBackupPlanTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExportBackupPlanTemplateInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) + } + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *DescribeBackupJobOutput) SetBackupVaultArn(v string) *DescribeBackupJobOutput { - s.BackupVaultArn = &v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *ExportBackupPlanTemplateInput) SetBackupPlanId(v string) *ExportBackupPlanTemplateInput { + s.BackupPlanId = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DescribeBackupJobOutput) SetBackupVaultName(v string) *DescribeBackupJobOutput { - s.BackupVaultName = &v - return s +type ExportBackupPlanTemplateOutput struct { + _ struct{} `type:"structure"` + + // The body of a backup plan template in JSON format. + // + // This is a signed JSON document that cannot be modified before being passed + // to GetBackupPlanFromJSON. + BackupPlanTemplateJson *string `type:"string"` } -// SetBytesTransferred sets the BytesTransferred field's value. -func (s *DescribeBackupJobOutput) SetBytesTransferred(v int64) *DescribeBackupJobOutput { - s.BytesTransferred = &v - return s +// 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 ExportBackupPlanTemplateOutput) String() string { + return awsutil.Prettify(s) } -// SetChildJobsInState sets the ChildJobsInState field's value. -func (s *DescribeBackupJobOutput) SetChildJobsInState(v map[string]*int64) *DescribeBackupJobOutput { - s.ChildJobsInState = v - return 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 ExportBackupPlanTemplateOutput) GoString() string { + return s.String() } -// SetCompletionDate sets the CompletionDate field's value. -func (s *DescribeBackupJobOutput) SetCompletionDate(v time.Time) *DescribeBackupJobOutput { - s.CompletionDate = &v +// SetBackupPlanTemplateJson sets the BackupPlanTemplateJson field's value. +func (s *ExportBackupPlanTemplateOutput) SetBackupPlanTemplateJson(v string) *ExportBackupPlanTemplateOutput { + s.BackupPlanTemplateJson = &v return s } -// SetCreatedBy sets the CreatedBy field's value. -func (s *DescribeBackupJobOutput) SetCreatedBy(v *RecoveryPointCreator) *DescribeBackupJobOutput { - s.CreatedBy = v - return s +// Contains detailed information about a framework. Frameworks contain controls, +// which evaluate and report on your backup events and resources. Frameworks +// generate daily compliance results. +type Framework struct { + _ struct{} `type:"structure"` + + // The date and time that a framework is created, in ISO 8601 representation. + // The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 + // represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC. + CreationTime *time.Time `type:"timestamp"` + + // The deployment status of a framework. The statuses are: + // + // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED + // | FAILED + DeploymentStatus *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + FrameworkArn *string `type:"string"` + + // An optional description of the framework with a maximum 1,024 characters. + FrameworkDescription *string `type:"string"` + + // The unique name of a framework. This name is between 1 and 256 characters, + // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), + // and underscores (_). + FrameworkName *string `min:"1" type:"string"` + + // The number of controls contained by the framework. + NumberOfControls *int64 `type:"integer"` } -// SetCreationDate sets the CreationDate field's value. -func (s *DescribeBackupJobOutput) SetCreationDate(v time.Time) *DescribeBackupJobOutput { - s.CreationDate = &v - return s +// 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 Framework) String() string { + return awsutil.Prettify(s) } -// SetExpectedCompletionDate sets the ExpectedCompletionDate field's value. -func (s *DescribeBackupJobOutput) SetExpectedCompletionDate(v time.Time) *DescribeBackupJobOutput { - s.ExpectedCompletionDate = &v - return 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 Framework) GoString() string { + return s.String() } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *DescribeBackupJobOutput) SetIamRoleArn(v string) *DescribeBackupJobOutput { - s.IamRoleArn = &v +// SetCreationTime sets the CreationTime field's value. +func (s *Framework) SetCreationTime(v time.Time) *Framework { + s.CreationTime = &v return s } -// SetIsParent sets the IsParent field's value. -func (s *DescribeBackupJobOutput) SetIsParent(v bool) *DescribeBackupJobOutput { - s.IsParent = &v +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *Framework) SetDeploymentStatus(v string) *Framework { + s.DeploymentStatus = &v return s } -// SetMessageCategory sets the MessageCategory field's value. -func (s *DescribeBackupJobOutput) SetMessageCategory(v string) *DescribeBackupJobOutput { - s.MessageCategory = &v +// SetFrameworkArn sets the FrameworkArn field's value. +func (s *Framework) SetFrameworkArn(v string) *Framework { + s.FrameworkArn = &v return s } -// SetNumberOfChildJobs sets the NumberOfChildJobs field's value. -func (s *DescribeBackupJobOutput) SetNumberOfChildJobs(v int64) *DescribeBackupJobOutput { - s.NumberOfChildJobs = &v +// SetFrameworkDescription sets the FrameworkDescription field's value. +func (s *Framework) SetFrameworkDescription(v string) *Framework { + s.FrameworkDescription = &v return s } -// SetParentJobId sets the ParentJobId field's value. -func (s *DescribeBackupJobOutput) SetParentJobId(v string) *DescribeBackupJobOutput { - s.ParentJobId = &v +// SetFrameworkName sets the FrameworkName field's value. +func (s *Framework) SetFrameworkName(v string) *Framework { + s.FrameworkName = &v return s } -// SetPercentDone sets the PercentDone field's value. -func (s *DescribeBackupJobOutput) SetPercentDone(v string) *DescribeBackupJobOutput { - s.PercentDone = &v +// SetNumberOfControls sets the NumberOfControls field's value. +func (s *Framework) SetNumberOfControls(v int64) *Framework { + s.NumberOfControls = &v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DescribeBackupJobOutput) SetRecoveryPointArn(v string) *DescribeBackupJobOutput { - s.RecoveryPointArn = &v - return s +// Contains detailed information about all of the controls of a framework. Each +// framework must contain at least one control. +type FrameworkControl struct { + _ struct{} `type:"structure"` + + // A list of ParameterName and ParameterValue pairs. + ControlInputParameters []*ControlInputParameter `type:"list"` + + // The name of a control. This name is between 1 and 256 characters. + // + // ControlName is a required field + ControlName *string `type:"string" required:"true"` + + // The scope of a control. The control scope defines what the control will evaluate. + // Three examples of control scopes are: a specific backup plan, all backup + // plans with a specific tag, or all backup plans. + ControlScope *ControlScope `type:"structure"` } -// SetResourceArn sets the ResourceArn field's value. -func (s *DescribeBackupJobOutput) SetResourceArn(v string) *DescribeBackupJobOutput { - s.ResourceArn = &v - return s +// 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 FrameworkControl) String() string { + return awsutil.Prettify(s) } -// SetResourceName sets the ResourceName field's value. -func (s *DescribeBackupJobOutput) SetResourceName(v string) *DescribeBackupJobOutput { - s.ResourceName = &v - return 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 FrameworkControl) GoString() string { + return s.String() } -// SetResourceType sets the ResourceType field's value. -func (s *DescribeBackupJobOutput) SetResourceType(v string) *DescribeBackupJobOutput { - s.ResourceType = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *FrameworkControl) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FrameworkControl"} + if s.ControlName == nil { + invalidParams.Add(request.NewErrParamRequired("ControlName")) + } + if s.ControlScope != nil { + if err := s.ControlScope.Validate(); err != nil { + invalidParams.AddNested("ControlScope", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStartBy sets the StartBy field's value. -func (s *DescribeBackupJobOutput) SetStartBy(v time.Time) *DescribeBackupJobOutput { - s.StartBy = &v +// SetControlInputParameters sets the ControlInputParameters field's value. +func (s *FrameworkControl) SetControlInputParameters(v []*ControlInputParameter) *FrameworkControl { + s.ControlInputParameters = v return s } -// SetState sets the State field's value. -func (s *DescribeBackupJobOutput) SetState(v string) *DescribeBackupJobOutput { - s.State = &v +// SetControlName sets the ControlName field's value. +func (s *FrameworkControl) SetControlName(v string) *FrameworkControl { + s.ControlName = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *DescribeBackupJobOutput) SetStatusMessage(v string) *DescribeBackupJobOutput { - s.StatusMessage = &v +// SetControlScope sets the ControlScope field's value. +func (s *FrameworkControl) SetControlScope(v *ControlScope) *FrameworkControl { + s.ControlScope = v return s } -type DescribeBackupVaultInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // This is the account ID of the specified backup vault. - BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` +type GetBackupPlanFromJSONInput struct { + _ struct{} `type:"structure"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. + // A customer-supplied backup plan document in JSON format. // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // BackupPlanTemplateJson is a required field + BackupPlanTemplateJson *string `type:"string" required:"true"` } // String returns the string representation. @@ -11883,7 +15819,7 @@ type DescribeBackupVaultInput 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 DescribeBackupVaultInput) String() string { +func (s GetBackupPlanFromJSONInput) String() string { return awsutil.Prettify(s) } @@ -11892,18 +15828,15 @@ func (s DescribeBackupVaultInput) 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 DescribeBackupVaultInput) GoString() string { +func (s GetBackupPlanFromJSONInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeBackupVaultInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) +func (s *GetBackupPlanFromJSONInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanFromJSONInput"} + if s.BackupPlanTemplateJson == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanTemplateJson")) } if invalidParams.Len() > 0 { @@ -11912,92 +15845,18 @@ func (s *DescribeBackupVaultInput) Validate() error { return nil } -// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. -func (s *DescribeBackupVaultInput) SetBackupVaultAccountId(v string) *DescribeBackupVaultInput { - s.BackupVaultAccountId = &v - return s -} - -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DescribeBackupVaultInput) SetBackupVaultName(v string) *DescribeBackupVaultInput { - s.BackupVaultName = &v +// SetBackupPlanTemplateJson sets the BackupPlanTemplateJson field's value. +func (s *GetBackupPlanFromJSONInput) SetBackupPlanTemplateJson(v string) *GetBackupPlanFromJSONInput { + s.BackupPlanTemplateJson = &v return s } -type DescribeBackupVaultOutput struct { +type GetBackupPlanFromJSONOutput struct { _ struct{} `type:"structure"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for - // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Region where they are created. They consist of lowercase letters, numbers, - // and hyphens. - BackupVaultName *string `type:"string"` - - // The date and time that a backup vault is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. - CreatorRequestId *string `type:"string"` - - // The server-side encryption key that is used to protect your backups; for - // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. - EncryptionKeyArn *string `type:"string"` - - // The date and time when Backup Vault Lock configuration cannot be changed - // or deleted. - // - // If you applied Vault Lock to your vault without specifying a lock date, you - // can change any of your Vault Lock settings, or delete Vault Lock from the - // vault entirely, at any time. - // - // This value is in Unix format, Coordinated Universal Time (UTC), and accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - LockDate *time.Time `type:"timestamp"` - - // A Boolean that indicates whether Backup Vault Lock is currently protecting - // the backup vault. True means that Vault Lock causes delete or update operations - // on the recovery points stored in the vault to fail. - Locked *bool `type:"boolean"` - - // The Backup Vault Lock setting that specifies the maximum retention period - // that the vault retains its recovery points. If this parameter is not specified, - // Vault Lock does not enforce a maximum retention period on the recovery points - // in the vault (allowing indefinite storage). - // - // If specified, any backup or copy job to the vault must have a lifecycle policy - // with a retention period equal to or shorter than the maximum retention period. - // If the job's retention period is longer than that maximum retention period, - // then the vault fails the backup or copy job, and you should either modify - // your lifecycle settings or use a different vault. Recovery points already - // stored in the vault prior to Vault Lock are not affected. - MaxRetentionDays *int64 `type:"long"` - - // The Backup Vault Lock setting that specifies the minimum retention period - // that the vault retains its recovery points. If this parameter is not specified, - // Vault Lock does not enforce a minimum retention period. - // - // If specified, any backup or copy job to the vault must have a lifecycle policy - // with a retention period equal to or longer than the minimum retention period. - // If the job's retention period is shorter than that minimum retention period, - // then the vault fails the backup or copy job, and you should either modify - // your lifecycle settings or use a different vault. Recovery points already - // stored in the vault prior to Vault Lock are not affected. - MinRetentionDays *int64 `type:"long"` - - // The number of recovery points that are stored in a backup vault. - NumberOfRecoveryPoints *int64 `type:"long"` - - // This is the type of vault described. - VaultType *string `type:"string" enum:"VaultType"` + // Specifies the body of a backup plan. Includes a BackupPlanName and one or + // more sets of Rules. + BackupPlan *Plan `type:"structure"` } // String returns the string representation. @@ -12005,7 +15864,7 @@ type DescribeBackupVaultOutput 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 DescribeBackupVaultOutput) String() string { +func (s GetBackupPlanFromJSONOutput) String() string { return awsutil.Prettify(s) } @@ -12014,83 +15873,108 @@ func (s DescribeBackupVaultOutput) 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 DescribeBackupVaultOutput) GoString() string { +func (s GetBackupPlanFromJSONOutput) GoString() string { return s.String() } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *DescribeBackupVaultOutput) SetBackupVaultArn(v string) *DescribeBackupVaultOutput { - s.BackupVaultArn = &v +// SetBackupPlan sets the BackupPlan field's value. +func (s *GetBackupPlanFromJSONOutput) SetBackupPlan(v *Plan) *GetBackupPlanFromJSONOutput { + s.BackupPlan = v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DescribeBackupVaultOutput) SetBackupVaultName(v string) *DescribeBackupVaultOutput { - s.BackupVaultName = &v - return s -} +type GetBackupPlanFromTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` -// SetCreationDate sets the CreationDate field's value. -func (s *DescribeBackupVaultOutput) SetCreationDate(v time.Time) *DescribeBackupVaultOutput { - s.CreationDate = &v - return s + // Uniquely identifies a stored backup plan template. + // + // BackupPlanTemplateId is a required field + BackupPlanTemplateId *string `location:"uri" locationName:"templateId" type:"string" required:"true"` } -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *DescribeBackupVaultOutput) SetCreatorRequestId(v string) *DescribeBackupVaultOutput { - s.CreatorRequestId = &v - return s +// 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 GetBackupPlanFromTemplateInput) String() string { + return awsutil.Prettify(s) } -// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. -func (s *DescribeBackupVaultOutput) SetEncryptionKeyArn(v string) *DescribeBackupVaultOutput { - s.EncryptionKeyArn = &v - return 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 GetBackupPlanFromTemplateInput) GoString() string { + return s.String() } -// SetLockDate sets the LockDate field's value. -func (s *DescribeBackupVaultOutput) SetLockDate(v time.Time) *DescribeBackupVaultOutput { - s.LockDate = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBackupPlanFromTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanFromTemplateInput"} + if s.BackupPlanTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanTemplateId")) + } + if s.BackupPlanTemplateId != nil && len(*s.BackupPlanTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanTemplateId", 1)) + } -// SetLocked sets the Locked field's value. -func (s *DescribeBackupVaultOutput) SetLocked(v bool) *DescribeBackupVaultOutput { - s.Locked = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetMaxRetentionDays sets the MaxRetentionDays field's value. -func (s *DescribeBackupVaultOutput) SetMaxRetentionDays(v int64) *DescribeBackupVaultOutput { - s.MaxRetentionDays = &v +// SetBackupPlanTemplateId sets the BackupPlanTemplateId field's value. +func (s *GetBackupPlanFromTemplateInput) SetBackupPlanTemplateId(v string) *GetBackupPlanFromTemplateInput { + s.BackupPlanTemplateId = &v return s } -// SetMinRetentionDays sets the MinRetentionDays field's value. -func (s *DescribeBackupVaultOutput) SetMinRetentionDays(v int64) *DescribeBackupVaultOutput { - s.MinRetentionDays = &v - return s +type GetBackupPlanFromTemplateOutput struct { + _ struct{} `type:"structure"` + + // Returns the body of a backup plan based on the target template, including + // the name, rules, and backup vault of the plan. + BackupPlanDocument *Plan `type:"structure"` } -// SetNumberOfRecoveryPoints sets the NumberOfRecoveryPoints field's value. -func (s *DescribeBackupVaultOutput) SetNumberOfRecoveryPoints(v int64) *DescribeBackupVaultOutput { - s.NumberOfRecoveryPoints = &v - return s +// 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 GetBackupPlanFromTemplateOutput) 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 GetBackupPlanFromTemplateOutput) GoString() string { + return s.String() } -// SetVaultType sets the VaultType field's value. -func (s *DescribeBackupVaultOutput) SetVaultType(v string) *DescribeBackupVaultOutput { - s.VaultType = &v +// SetBackupPlanDocument sets the BackupPlanDocument field's value. +func (s *GetBackupPlanFromTemplateOutput) SetBackupPlanDocument(v *Plan) *GetBackupPlanFromTemplateOutput { + s.BackupPlanDocument = v return s } -type DescribeCopyJobInput struct { +type GetBackupPlanInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies a copy job. + // Uniquely identifies a backup plan. // - // CopyJobId is a required field - CopyJobId *string `location:"uri" locationName:"copyJobId" type:"string" required:"true"` + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + + // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most + // 1,024 bytes long. Version IDs cannot be edited. + VersionId *string `location:"querystring" locationName:"versionId" type:"string"` } // String returns the string representation. @@ -12098,7 +15982,7 @@ type DescribeCopyJobInput 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 DescribeCopyJobInput) String() string { +func (s GetBackupPlanInput) String() string { return awsutil.Prettify(s) } @@ -12107,18 +15991,18 @@ func (s DescribeCopyJobInput) 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 DescribeCopyJobInput) GoString() string { +func (s GetBackupPlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeCopyJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeCopyJobInput"} - if s.CopyJobId == nil { - invalidParams.Add(request.NewErrParamRequired("CopyJobId")) +func (s *GetBackupPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) } - if s.CopyJobId != nil && len(*s.CopyJobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CopyJobId", 1)) + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) } if invalidParams.Len() > 0 { @@ -12127,17 +16011,61 @@ func (s *DescribeCopyJobInput) Validate() error { return nil } -// SetCopyJobId sets the CopyJobId field's value. -func (s *DescribeCopyJobInput) SetCopyJobId(v string) *DescribeCopyJobInput { - s.CopyJobId = &v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *GetBackupPlanInput) SetBackupPlanId(v string) *GetBackupPlanInput { + s.BackupPlanId = &v return s } -type DescribeCopyJobOutput struct { +// SetVersionId sets the VersionId field's value. +func (s *GetBackupPlanInput) SetVersionId(v string) *GetBackupPlanInput { + s.VersionId = &v + return s +} + +type GetBackupPlanOutput struct { _ struct{} `type:"structure"` - // Contains detailed information about a copy job. - CopyJob *CopyJob `type:"structure"` + // Contains a list of BackupOptions for each resource type. The list is populated + // only if the advanced option is set for the backup plan. + AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` + + // Specifies the body of a backup plan. Includes a BackupPlanName and one or + // more sets of Rules. + BackupPlan *Plan `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for + // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. + BackupPlanArn *string `type:"string"` + + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` + + // The date and time that a backup plan is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. + CreatorRequestId *string `type:"string"` + + // The date and time that a backup plan is deleted, in Unix format and Coordinated + // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + DeletionDate *time.Time `type:"timestamp"` + + // The last time a job to back up resources was run with this backup plan. A + // date and time, in Unix format and Coordinated Universal Time (UTC). The value + // of LastExecutionDate is accurate to milliseconds. For example, the value + // 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionDate *time.Time `type:"timestamp"` + + // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most + // 1,024 bytes long. Version IDs cannot be edited. + VersionId *string `type:"string"` } // String returns the string representation. @@ -12145,7 +16073,7 @@ type DescribeCopyJobOutput 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 DescribeCopyJobOutput) String() string { +func (s GetBackupPlanOutput) String() string { return awsutil.Prettify(s) } @@ -12154,23 +16082,77 @@ func (s DescribeCopyJobOutput) 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 DescribeCopyJobOutput) GoString() string { +func (s GetBackupPlanOutput) GoString() string { return s.String() } -// SetCopyJob sets the CopyJob field's value. -func (s *DescribeCopyJobOutput) SetCopyJob(v *CopyJob) *DescribeCopyJobOutput { - s.CopyJob = v +// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. +func (s *GetBackupPlanOutput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *GetBackupPlanOutput { + s.AdvancedBackupSettings = v return s } -type DescribeFrameworkInput struct { +// SetBackupPlan sets the BackupPlan field's value. +func (s *GetBackupPlanOutput) SetBackupPlan(v *Plan) *GetBackupPlanOutput { + s.BackupPlan = v + return s +} + +// SetBackupPlanArn sets the BackupPlanArn field's value. +func (s *GetBackupPlanOutput) SetBackupPlanArn(v string) *GetBackupPlanOutput { + s.BackupPlanArn = &v + return s +} + +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *GetBackupPlanOutput) SetBackupPlanId(v string) *GetBackupPlanOutput { + s.BackupPlanId = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *GetBackupPlanOutput) SetCreationDate(v time.Time) *GetBackupPlanOutput { + s.CreationDate = &v + return s +} + +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *GetBackupPlanOutput) SetCreatorRequestId(v string) *GetBackupPlanOutput { + s.CreatorRequestId = &v + return s +} + +// SetDeletionDate sets the DeletionDate field's value. +func (s *GetBackupPlanOutput) SetDeletionDate(v time.Time) *GetBackupPlanOutput { + s.DeletionDate = &v + return s +} + +// SetLastExecutionDate sets the LastExecutionDate field's value. +func (s *GetBackupPlanOutput) SetLastExecutionDate(v time.Time) *GetBackupPlanOutput { + s.LastExecutionDate = &v + return s +} + +// SetVersionId sets the VersionId field's value. +func (s *GetBackupPlanOutput) SetVersionId(v string) *GetBackupPlanOutput { + s.VersionId = &v + return s +} + +type GetBackupSelectionInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The unique name of a framework. + // Uniquely identifies a backup plan. // - // FrameworkName is a required field - FrameworkName *string `location:"uri" locationName:"frameworkName" min:"1" type:"string" required:"true"` + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + + // Uniquely identifies the body of a request to assign a set of resources to + // a backup plan. + // + // SelectionId is a required field + SelectionId *string `location:"uri" locationName:"selectionId" type:"string" required:"true"` } // String returns the string representation. @@ -12178,7 +16160,7 @@ type DescribeFrameworkInput 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 DescribeFrameworkInput) String() string { +func (s GetBackupSelectionInput) String() string { return awsutil.Prettify(s) } @@ -12187,18 +16169,24 @@ func (s DescribeFrameworkInput) 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 DescribeFrameworkInput) GoString() string { +func (s GetBackupSelectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeFrameworkInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeFrameworkInput"} - if s.FrameworkName == nil { - invalidParams.Add(request.NewErrParamRequired("FrameworkName")) +func (s *GetBackupSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupSelectionInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) } - if s.FrameworkName != nil && len(*s.FrameworkName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("FrameworkName", 1)) + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + if s.SelectionId == nil { + invalidParams.Add(request.NewErrParamRequired("SelectionId")) + } + if s.SelectionId != nil && len(*s.SelectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SelectionId", 1)) } if invalidParams.Len() > 0 { @@ -12207,63 +16195,41 @@ func (s *DescribeFrameworkInput) Validate() error { return nil } -// SetFrameworkName sets the FrameworkName field's value. -func (s *DescribeFrameworkInput) SetFrameworkName(v string) *DescribeFrameworkInput { - s.FrameworkName = &v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *GetBackupSelectionInput) SetBackupPlanId(v string) *GetBackupSelectionInput { + s.BackupPlanId = &v return s } -type DescribeFrameworkOutput struct { - _ struct{} `type:"structure"` - - // The date and time that a framework is created, in ISO 8601 representation. - // The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 - // represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC. - CreationTime *time.Time `type:"timestamp"` - - // The deployment status of a framework. The statuses are: - // - // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED - // | FAILED - DeploymentStatus *string `type:"string"` - - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - FrameworkArn *string `type:"string"` +// SetSelectionId sets the SelectionId field's value. +func (s *GetBackupSelectionInput) SetSelectionId(v string) *GetBackupSelectionInput { + s.SelectionId = &v + return s +} - // A list of the controls that make up the framework. Each control in the list - // has a name, input parameters, and scope. - FrameworkControls []*FrameworkControl `type:"list"` +type GetBackupSelectionOutput struct { + _ struct{} `type:"structure"` - // An optional description of the framework. - FrameworkDescription *string `type:"string"` + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` - // The unique name of a framework. - FrameworkName *string `min:"1" type:"string"` + // Specifies the body of a request to assign a set of resources to a backup + // plan. + BackupSelection *Selection `type:"structure"` - // A framework consists of one or more controls. Each control governs a resource, - // such as backup plans, backup selections, backup vaults, or recovery points. - // You can also turn Config recording on or off for each resource. The statuses - // are: - // - // * ACTIVE when recording is turned on for all resources governed by the - // framework. - // - // * PARTIALLY_ACTIVE when recording is turned off for at least one resource - // governed by the framework. - // - // * INACTIVE when recording is turned off for all resources governed by - // the framework. - // - // * UNAVAILABLE when Backup is unable to validate recording status at this - // time. - FrameworkStatus *string `type:"string"` + // The date and time a backup selection is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` - // A customer-chosen string that you can use to distinguish between otherwise - // identical calls to DescribeFrameworkOutput. Retrying a successful request - // with the same idempotency token results in a success message with no action - // taken. - IdempotencyToken *string `type:"string"` + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. + CreatorRequestId *string `type:"string"` + + // Uniquely identifies the body of a request to assign a set of resources to + // a backup plan. + SelectionId *string `type:"string"` } // String returns the string representation. @@ -12271,7 +16237,7 @@ type DescribeFrameworkOutput 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 DescribeFrameworkOutput) String() string { +func (s GetBackupSelectionOutput) String() string { return awsutil.Prettify(s) } @@ -12280,60 +16246,50 @@ func (s DescribeFrameworkOutput) 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 DescribeFrameworkOutput) GoString() string { +func (s GetBackupSelectionOutput) GoString() string { return s.String() } -// SetCreationTime sets the CreationTime field's value. -func (s *DescribeFrameworkOutput) SetCreationTime(v time.Time) *DescribeFrameworkOutput { - s.CreationTime = &v - return s -} - -// SetDeploymentStatus sets the DeploymentStatus field's value. -func (s *DescribeFrameworkOutput) SetDeploymentStatus(v string) *DescribeFrameworkOutput { - s.DeploymentStatus = &v - return s -} - -// SetFrameworkArn sets the FrameworkArn field's value. -func (s *DescribeFrameworkOutput) SetFrameworkArn(v string) *DescribeFrameworkOutput { - s.FrameworkArn = &v - return s -} - -// SetFrameworkControls sets the FrameworkControls field's value. -func (s *DescribeFrameworkOutput) SetFrameworkControls(v []*FrameworkControl) *DescribeFrameworkOutput { - s.FrameworkControls = v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *GetBackupSelectionOutput) SetBackupPlanId(v string) *GetBackupSelectionOutput { + s.BackupPlanId = &v return s } -// SetFrameworkDescription sets the FrameworkDescription field's value. -func (s *DescribeFrameworkOutput) SetFrameworkDescription(v string) *DescribeFrameworkOutput { - s.FrameworkDescription = &v +// SetBackupSelection sets the BackupSelection field's value. +func (s *GetBackupSelectionOutput) SetBackupSelection(v *Selection) *GetBackupSelectionOutput { + s.BackupSelection = v return s } -// SetFrameworkName sets the FrameworkName field's value. -func (s *DescribeFrameworkOutput) SetFrameworkName(v string) *DescribeFrameworkOutput { - s.FrameworkName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *GetBackupSelectionOutput) SetCreationDate(v time.Time) *GetBackupSelectionOutput { + s.CreationDate = &v return s } -// SetFrameworkStatus sets the FrameworkStatus field's value. -func (s *DescribeFrameworkOutput) SetFrameworkStatus(v string) *DescribeFrameworkOutput { - s.FrameworkStatus = &v +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *GetBackupSelectionOutput) SetCreatorRequestId(v string) *GetBackupSelectionOutput { + s.CreatorRequestId = &v return s } -// SetIdempotencyToken sets the IdempotencyToken field's value. -func (s *DescribeFrameworkOutput) SetIdempotencyToken(v string) *DescribeFrameworkOutput { - s.IdempotencyToken = &v +// SetSelectionId sets the SelectionId field's value. +func (s *GetBackupSelectionOutput) SetSelectionId(v string) *GetBackupSelectionOutput { + s.SelectionId = &v return s } -type DescribeGlobalSettingsInput struct { +type GetBackupVaultAccessPolicyInput struct { _ struct{} `type:"structure" nopayload:"true"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -12341,7 +16297,7 @@ type DescribeGlobalSettingsInput 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 DescribeGlobalSettingsInput) String() string { +func (s GetBackupVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } @@ -12350,21 +16306,47 @@ func (s DescribeGlobalSettingsInput) 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 DescribeGlobalSettingsInput) GoString() string { +func (s GetBackupVaultAccessPolicyInput) GoString() string { return s.String() } -type DescribeGlobalSettingsOutput struct { +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBackupVaultAccessPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupVaultAccessPolicyInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *GetBackupVaultAccessPolicyInput { + s.BackupVaultName = &v + return s +} + +type GetBackupVaultAccessPolicyOutput struct { _ struct{} `type:"structure"` - // The status of the flag isCrossAccountBackupEnabled. - GlobalSettings map[string]*string `type:"map"` + // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for + // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` - // The date and time that the flag isCrossAccountBackupEnabled was last updated. - // This update is in Unix format and Coordinated Universal Time (UTC). The value - // of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 - // represents Friday, January 26, 2018 12:11:30.087 AM. - LastUpdateTime *time.Time `type:"timestamp"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Region where they are created. They consist of lowercase letters, numbers, + // and hyphens. + BackupVaultName *string `type:"string"` + + // The backup vault access policy document in JSON format. + Policy *string `type:"string"` } // String returns the string representation. @@ -12372,7 +16354,7 @@ type DescribeGlobalSettingsOutput 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 DescribeGlobalSettingsOutput) String() string { +func (s GetBackupVaultAccessPolicyOutput) String() string { return awsutil.Prettify(s) } @@ -12381,30 +16363,38 @@ func (s DescribeGlobalSettingsOutput) 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 DescribeGlobalSettingsOutput) GoString() string { +func (s GetBackupVaultAccessPolicyOutput) GoString() string { return s.String() } -// SetGlobalSettings sets the GlobalSettings field's value. -func (s *DescribeGlobalSettingsOutput) SetGlobalSettings(v map[string]*string) *DescribeGlobalSettingsOutput { - s.GlobalSettings = v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *GetBackupVaultAccessPolicyOutput) SetBackupVaultArn(v string) *GetBackupVaultAccessPolicyOutput { + s.BackupVaultArn = &v return s } -// SetLastUpdateTime sets the LastUpdateTime field's value. -func (s *DescribeGlobalSettingsOutput) SetLastUpdateTime(v time.Time) *DescribeGlobalSettingsOutput { - s.LastUpdateTime = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetBackupVaultAccessPolicyOutput) SetBackupVaultName(v string) *GetBackupVaultAccessPolicyOutput { + s.BackupVaultName = &v return s } -type DescribeProtectedResourceInput struct { +// SetPolicy sets the Policy field's value. +func (s *GetBackupVaultAccessPolicyOutput) SetPolicy(v string) *GetBackupVaultAccessPolicyOutput { + s.Policy = &v + return s +} + +type GetBackupVaultNotificationsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` } // String returns the string representation. @@ -12412,7 +16402,7 @@ type DescribeProtectedResourceInput 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 DescribeProtectedResourceInput) String() string { +func (s GetBackupVaultNotificationsInput) String() string { return awsutil.Prettify(s) } @@ -12421,18 +16411,18 @@ func (s DescribeProtectedResourceInput) 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 DescribeProtectedResourceInput) GoString() string { +func (s GetBackupVaultNotificationsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeProtectedResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeProtectedResourceInput"} - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) +func (s *GetBackupVaultNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBackupVaultNotificationsInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) } if invalidParams.Len() > 0 { @@ -12441,32 +16431,32 @@ func (s *DescribeProtectedResourceInput) Validate() error { return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *DescribeProtectedResourceInput) SetResourceArn(v string) *DescribeProtectedResourceInput { - s.ResourceArn = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetBackupVaultNotificationsInput) SetBackupVaultName(v string) *GetBackupVaultNotificationsInput { + s.BackupVaultName = &v return s } -type DescribeProtectedResourceOutput struct { +type GetBackupVaultNotificationsOutput struct { _ struct{} `type:"structure"` - // The date and time that a resource was last backed up, in Unix format and - // Coordinated Universal Time (UTC). The value of LastBackupTime is accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - LastBackupTime *time.Time `type:"timestamp"` + // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for + // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` - // An ARN that uniquely identifies a resource. The format of the ARN depends - // on the resource type. - ResourceArn *string `type:"string"` + // An array of events that indicate the status of jobs to back up resources + // to the backup vault. + BackupVaultEvents []*string `type:"list" enum:"VaultEvent"` - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Region where they are created. They consist of lowercase letters, numbers, + // and hyphens. + BackupVaultName *string `type:"string"` - // The type of Amazon Web Services resource saved as a recovery point; for example, - // an Amazon EBS volume or an Amazon RDS database. - ResourceType *string `type:"string"` + // An ARN that uniquely identifies an Amazon Simple Notification Service (Amazon + // SNS) topic; for example, arn:aws:sns:us-west-2:111122223333:MyTopic. + SNSTopicArn *string `type:"string"` } // String returns the string representation. @@ -12474,7 +16464,7 @@ type DescribeProtectedResourceOutput 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 DescribeProtectedResourceOutput) String() string { +func (s GetBackupVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } @@ -12483,53 +16473,42 @@ func (s DescribeProtectedResourceOutput) 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 DescribeProtectedResourceOutput) GoString() string { +func (s GetBackupVaultNotificationsOutput) GoString() string { return s.String() } -// SetLastBackupTime sets the LastBackupTime field's value. -func (s *DescribeProtectedResourceOutput) SetLastBackupTime(v time.Time) *DescribeProtectedResourceOutput { - s.LastBackupTime = &v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *GetBackupVaultNotificationsOutput) SetBackupVaultArn(v string) *GetBackupVaultNotificationsOutput { + s.BackupVaultArn = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *DescribeProtectedResourceOutput) SetResourceArn(v string) *DescribeProtectedResourceOutput { - s.ResourceArn = &v +// SetBackupVaultEvents sets the BackupVaultEvents field's value. +func (s *GetBackupVaultNotificationsOutput) SetBackupVaultEvents(v []*string) *GetBackupVaultNotificationsOutput { + s.BackupVaultEvents = v return s } -// SetResourceName sets the ResourceName field's value. -func (s *DescribeProtectedResourceOutput) SetResourceName(v string) *DescribeProtectedResourceOutput { - s.ResourceName = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetBackupVaultNotificationsOutput) SetBackupVaultName(v string) *GetBackupVaultNotificationsOutput { + s.BackupVaultName = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *DescribeProtectedResourceOutput) SetResourceType(v string) *DescribeProtectedResourceOutput { - s.ResourceType = &v +// SetSNSTopicArn sets the SNSTopicArn field's value. +func (s *GetBackupVaultNotificationsOutput) SetSNSTopicArn(v string) *GetBackupVaultNotificationsOutput { + s.SNSTopicArn = &v return s } -type DescribeRecoveryPointInput struct { +type GetLegalHoldInput struct { _ struct{} `type:"structure" nopayload:"true"` - // This is the account ID of the specified backup vault. - BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - - // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // This is the ID required to use GetLegalHold. This unique ID is associated + // with a specific legal hold. // - // RecoveryPointArn is a required field - RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` + // LegalHoldId is a required field + LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` } // String returns the string representation. @@ -12537,7 +16516,7 @@ type DescribeRecoveryPointInput 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 DescribeRecoveryPointInput) String() string { +func (s GetLegalHoldInput) String() string { return awsutil.Prettify(s) } @@ -12546,24 +16525,18 @@ func (s DescribeRecoveryPointInput) 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 DescribeRecoveryPointInput) GoString() string { +func (s GetLegalHoldInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeRecoveryPointInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeRecoveryPointInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.RecoveryPointArn == nil { - invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) +func (s *GetLegalHoldInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLegalHoldInput"} + if s.LegalHoldId == nil { + invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) } - if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) + if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) } if invalidParams.Len() > 0 { @@ -12572,167 +16545,48 @@ func (s *DescribeRecoveryPointInput) Validate() error { return nil } -// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. -func (s *DescribeRecoveryPointInput) SetBackupVaultAccountId(v string) *DescribeRecoveryPointInput { - s.BackupVaultAccountId = &v - return s -} - -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DescribeRecoveryPointInput) SetBackupVaultName(v string) *DescribeRecoveryPointInput { - s.BackupVaultName = &v - return s -} - -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DescribeRecoveryPointInput) SetRecoveryPointArn(v string) *DescribeRecoveryPointInput { - s.RecoveryPointArn = &v +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *GetLegalHoldInput) SetLegalHoldId(v string) *GetLegalHoldInput { + s.LegalHoldId = &v return s } -type DescribeRecoveryPointOutput struct { +type GetLegalHoldOutput struct { _ struct{} `type:"structure"` - // The size, in bytes, of a backup. - BackupSizeInBytes *int64 `type:"long"` - - // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Region where they are created. They consist of lowercase letters, numbers, - // and hyphens. - BackupVaultName *string `type:"string"` - - // A CalculatedLifecycle object containing DeleteAt and MoveToColdStorageAt - // timestamps. - CalculatedLifecycle *CalculatedLifecycle `type:"structure"` - - // The date and time that a job to create a recovery point is completed, in - // Unix format and Coordinated Universal Time (UTC). The value of CompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // This is the identifier of a resource within a composite group, such as nested - // (child) recovery point belonging to a composite (parent) stack. The ID is - // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) - // within a stack. - CompositeMemberIdentifier *string `type:"string"` + // String describing the reason for removing the legal hold. + CancelDescription *string `type:"string"` - // Contains identifying information about the creation of a recovery point, - // including the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId - // of the backup plan used to create it. - CreatedBy *RecoveryPointCreator `type:"structure"` + // Time in number when legal hold was cancelled. + CancellationDate *time.Time `type:"timestamp"` - // The date and time that a recovery point is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. + // Time in number format when legal hold was created. CreationDate *time.Time `type:"timestamp"` - // The server-side encryption key used to protect your backups; for example, - // arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. - EncryptionKeyArn *string `type:"string"` - - // Specifies the IAM role ARN used to create the target recovery point; for - // example, arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` - - // A Boolean value that is returned as TRUE if the specified recovery point - // is encrypted, or FALSE if the recovery point is not encrypted. - IsEncrypted *bool `type:"boolean"` - - // This returns the boolean value that a recovery point is a parent (composite) - // job. - IsParent *bool `type:"boolean"` - - // The date and time that a recovery point was last restored, in Unix format - // and Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - LastRestoreTime *time.Time `type:"timestamp"` - - // The lifecycle defines when a protected resource is transitioned to cold storage - // and when it expires. Backup transitions and expires backups automatically - // according to the lifecycle that you define. - // - // Backups that are transitioned to cold storage must be stored in cold storage - // for a minimum of 90 days. Therefore, the “retention” setting must be - // 90 days greater than the “transition to cold after days” setting. The - // “transition to cold after days” setting cannot be changed after a backup - // has been transitioned to cold. - // - // Resource types that are able to be transitioned to cold storage are listed - // in the "Lifecycle to cold storage" section of the Feature availability by - // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) - // table. Backup ignores this expression for other resource types. - Lifecycle *Lifecycle `type:"structure"` - - // This is an ARN that uniquely identifies a parent (composite) recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - ParentRecoveryPointArn *string `type:"string"` - - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` - - // An ARN that uniquely identifies a saved resource. The format of the ARN depends - // on the resource type. - ResourceArn *string `type:"string"` + // This is the returned string description of the legal hold. + Description *string `type:"string"` - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` + // This is the returned framework ARN for the specified legal hold. An Amazon + // Resource Name (ARN) uniquely identifies a resource. The format of the ARN + // depends on the resource type. + LegalHoldArn *string `type:"string"` - // The type of Amazon Web Services resource to save as a recovery point; for - // example, an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational - // Database Service (Amazon RDS) database. - ResourceType *string `type:"string"` + // This is the returned ID associated with a specified legal hold. + LegalHoldId *string `type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies the source vault where - // the resource was originally backed up in; for example, arn:aws:backup:us-east-1:123456789012:vault:BackupVault. - // If the recovery is restored to the same Amazon Web Services account or Region, - // this value will be null. - SourceBackupVaultArn *string `type:"string"` + // This specifies criteria to assign a set of resources, such as resource types + // or backup vaults. + RecoveryPointSelection *RecoveryPointSelection `type:"structure"` - // A status code specifying the state of the recovery point. - // - // PARTIAL status indicates Backup could not create the recovery point before - // the backup window closed. To increase your backup plan window using the API, - // see UpdateBackupPlan (https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateBackupPlan.html). - // You can also increase your backup plan window using the Console by choosing - // and editing your backup plan. - // - // EXPIRED status indicates that the recovery point has exceeded its retention - // period, but Backup lacks permission or is otherwise unable to delete it. - // To manually delete these recovery points, see Step 3: Delete the recovery - // points (https://docs.aws.amazon.com/aws-backup/latest/devguide/gs-cleanup-resources.html#cleanup-backups) - // in the Clean up resources section of Getting started. - // - // STOPPED status occurs on a continuous backup where a user has taken some - // action that causes the continuous backup to be disabled. This can be caused - // by the removal of permissions, turning off versioning, turning off events - // being sent to EventBridge, or disabling the EventBridge rules that are put - // in place by Backup. - // - // To resolve STOPPED status, ensure that all requested permissions are in place - // and that versioning is enabled on the S3 bucket. Once these conditions are - // met, the next instance of a backup rule running will result in a new continuous - // recovery point being created. The recovery points with STOPPED status do - // not need to be deleted. - // - // For SAP HANA on Amazon EC2 STOPPED status occurs due to user action, application - // misconfiguration, or backup failure. To ensure that future continuous backups - // succeed, refer to the recovery point status and check SAP HANA for details. - Status *string `type:"string" enum:"RecoveryPointStatus"` + // This is the date and time until which the legal hold record will be retained. + RetainRecordUntil *time.Time `type:"timestamp"` - // A status message explaining the status of the recovery point. - StatusMessage *string `type:"string"` + // This is the status of the legal hold. Statuses can be ACTIVE, CREATING, CANCELED, + // and CANCELING. + Status *string `type:"string" enum:"LegalHoldStatus"` - // Specifies the storage class of the recovery point. Valid values are WARM - // or COLD. - StorageClass *string `type:"string" enum:"StorageClass"` + // This is the string title of the legal hold. + Title *string `type:"string"` } // String returns the string representation. @@ -12740,7 +16594,7 @@ type DescribeRecoveryPointOutput 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 DescribeRecoveryPointOutput) String() string { +func (s GetLegalHoldOutput) String() string { return awsutil.Prettify(s) } @@ -12749,150 +16603,220 @@ func (s DescribeRecoveryPointOutput) 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 DescribeRecoveryPointOutput) GoString() string { +func (s GetLegalHoldOutput) GoString() string { return s.String() } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *DescribeRecoveryPointOutput) SetBackupSizeInBytes(v int64) *DescribeRecoveryPointOutput { - s.BackupSizeInBytes = &v +// SetCancelDescription sets the CancelDescription field's value. +func (s *GetLegalHoldOutput) SetCancelDescription(v string) *GetLegalHoldOutput { + s.CancelDescription = &v return s } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *DescribeRecoveryPointOutput) SetBackupVaultArn(v string) *DescribeRecoveryPointOutput { - s.BackupVaultArn = &v +// SetCancellationDate sets the CancellationDate field's value. +func (s *GetLegalHoldOutput) SetCancellationDate(v time.Time) *GetLegalHoldOutput { + s.CancellationDate = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DescribeRecoveryPointOutput) SetBackupVaultName(v string) *DescribeRecoveryPointOutput { - s.BackupVaultName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *GetLegalHoldOutput) SetCreationDate(v time.Time) *GetLegalHoldOutput { + s.CreationDate = &v return s } -// SetCalculatedLifecycle sets the CalculatedLifecycle field's value. -func (s *DescribeRecoveryPointOutput) SetCalculatedLifecycle(v *CalculatedLifecycle) *DescribeRecoveryPointOutput { - s.CalculatedLifecycle = v +// SetDescription sets the Description field's value. +func (s *GetLegalHoldOutput) SetDescription(v string) *GetLegalHoldOutput { + s.Description = &v return s } -// SetCompletionDate sets the CompletionDate field's value. -func (s *DescribeRecoveryPointOutput) SetCompletionDate(v time.Time) *DescribeRecoveryPointOutput { - s.CompletionDate = &v +// SetLegalHoldArn sets the LegalHoldArn field's value. +func (s *GetLegalHoldOutput) SetLegalHoldArn(v string) *GetLegalHoldOutput { + s.LegalHoldArn = &v return s } -// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. -func (s *DescribeRecoveryPointOutput) SetCompositeMemberIdentifier(v string) *DescribeRecoveryPointOutput { - s.CompositeMemberIdentifier = &v +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *GetLegalHoldOutput) SetLegalHoldId(v string) *GetLegalHoldOutput { + s.LegalHoldId = &v return s } -// SetCreatedBy sets the CreatedBy field's value. -func (s *DescribeRecoveryPointOutput) SetCreatedBy(v *RecoveryPointCreator) *DescribeRecoveryPointOutput { - s.CreatedBy = v +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *GetLegalHoldOutput) SetRecoveryPointSelection(v *RecoveryPointSelection) *GetLegalHoldOutput { + s.RecoveryPointSelection = v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *DescribeRecoveryPointOutput) SetCreationDate(v time.Time) *DescribeRecoveryPointOutput { - s.CreationDate = &v +// SetRetainRecordUntil sets the RetainRecordUntil field's value. +func (s *GetLegalHoldOutput) SetRetainRecordUntil(v time.Time) *GetLegalHoldOutput { + s.RetainRecordUntil = &v return s } -// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. -func (s *DescribeRecoveryPointOutput) SetEncryptionKeyArn(v string) *DescribeRecoveryPointOutput { - s.EncryptionKeyArn = &v +// SetStatus sets the Status field's value. +func (s *GetLegalHoldOutput) SetStatus(v string) *GetLegalHoldOutput { + s.Status = &v + return s +} + +// SetTitle sets the Title field's value. +func (s *GetLegalHoldOutput) SetTitle(v string) *GetLegalHoldOutput { + s.Title = &v return s } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *DescribeRecoveryPointOutput) SetIamRoleArn(v string) *DescribeRecoveryPointOutput { - s.IamRoleArn = &v - return s +type GetRecoveryPointRestoreMetadataInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // This is the account ID of the specified backup vault. + BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` } -// SetIsEncrypted sets the IsEncrypted field's value. -func (s *DescribeRecoveryPointOutput) SetIsEncrypted(v bool) *DescribeRecoveryPointOutput { - s.IsEncrypted = &v - return s +// 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 GetRecoveryPointRestoreMetadataInput) String() string { + return awsutil.Prettify(s) } -// SetIsParent sets the IsParent field's value. -func (s *DescribeRecoveryPointOutput) SetIsParent(v bool) *DescribeRecoveryPointOutput { - s.IsParent = &v - return 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 GetRecoveryPointRestoreMetadataInput) GoString() string { + return s.String() } -// SetLastRestoreTime sets the LastRestoreTime field's value. -func (s *DescribeRecoveryPointOutput) SetLastRestoreTime(v time.Time) *DescribeRecoveryPointOutput { - s.LastRestoreTime = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRecoveryPointRestoreMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRecoveryPointRestoreMetadataInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) + } + if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetLifecycle sets the Lifecycle field's value. -func (s *DescribeRecoveryPointOutput) SetLifecycle(v *Lifecycle) *DescribeRecoveryPointOutput { - s.Lifecycle = v +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *GetRecoveryPointRestoreMetadataInput) SetBackupVaultAccountId(v string) *GetRecoveryPointRestoreMetadataInput { + s.BackupVaultAccountId = &v return s } -// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. -func (s *DescribeRecoveryPointOutput) SetParentRecoveryPointArn(v string) *DescribeRecoveryPointOutput { - s.ParentRecoveryPointArn = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetRecoveryPointRestoreMetadataInput) SetBackupVaultName(v string) *GetRecoveryPointRestoreMetadataInput { + s.BackupVaultName = &v return s } // SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DescribeRecoveryPointOutput) SetRecoveryPointArn(v string) *DescribeRecoveryPointOutput { +func (s *GetRecoveryPointRestoreMetadataInput) SetRecoveryPointArn(v string) *GetRecoveryPointRestoreMetadataInput { s.RecoveryPointArn = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *DescribeRecoveryPointOutput) SetResourceArn(v string) *DescribeRecoveryPointOutput { - s.ResourceArn = &v - return s +type GetRecoveryPointRestoreMetadataOutput struct { + _ struct{} `type:"structure"` + + // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // This is the resource type associated with the recovery point. + ResourceType *string `type:"string"` + + // The set of metadata key-value pairs that describe the original configuration + // of the backed-up resource. These values vary depending on the service that + // is being restored. + // + // RestoreMetadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetRecoveryPointRestoreMetadataOutput's + // String and GoString methods. + RestoreMetadata map[string]*string `type:"map" sensitive:"true"` } -// SetResourceName sets the ResourceName field's value. -func (s *DescribeRecoveryPointOutput) SetResourceName(v string) *DescribeRecoveryPointOutput { - s.ResourceName = &v - return s +// 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 GetRecoveryPointRestoreMetadataOutput) String() string { + return awsutil.Prettify(s) } -// SetResourceType sets the ResourceType field's value. -func (s *DescribeRecoveryPointOutput) SetResourceType(v string) *DescribeRecoveryPointOutput { - s.ResourceType = &v - return 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 GetRecoveryPointRestoreMetadataOutput) GoString() string { + return s.String() } -// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. -func (s *DescribeRecoveryPointOutput) SetSourceBackupVaultArn(v string) *DescribeRecoveryPointOutput { - s.SourceBackupVaultArn = &v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *GetRecoveryPointRestoreMetadataOutput) SetBackupVaultArn(v string) *GetRecoveryPointRestoreMetadataOutput { + s.BackupVaultArn = &v return s } -// SetStatus sets the Status field's value. -func (s *DescribeRecoveryPointOutput) SetStatus(v string) *DescribeRecoveryPointOutput { - s.Status = &v +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *GetRecoveryPointRestoreMetadataOutput) SetRecoveryPointArn(v string) *GetRecoveryPointRestoreMetadataOutput { + s.RecoveryPointArn = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *DescribeRecoveryPointOutput) SetStatusMessage(v string) *DescribeRecoveryPointOutput { - s.StatusMessage = &v +// SetResourceType sets the ResourceType field's value. +func (s *GetRecoveryPointRestoreMetadataOutput) SetResourceType(v string) *GetRecoveryPointRestoreMetadataOutput { + s.ResourceType = &v return s } -// SetStorageClass sets the StorageClass field's value. -func (s *DescribeRecoveryPointOutput) SetStorageClass(v string) *DescribeRecoveryPointOutput { - s.StorageClass = &v +// SetRestoreMetadata sets the RestoreMetadata field's value. +func (s *GetRecoveryPointRestoreMetadataOutput) SetRestoreMetadata(v map[string]*string) *GetRecoveryPointRestoreMetadataOutput { + s.RestoreMetadata = v return s } -type DescribeRegionSettingsInput struct { +type GetRestoreJobMetadataInput struct { _ struct{} `type:"structure" nopayload:"true"` + + // This is a unique identifier of a restore job within Backup. + // + // RestoreJobId is a required field + RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` } // String returns the string representation. @@ -12900,7 +16824,7 @@ type DescribeRegionSettingsInput 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 DescribeRegionSettingsInput) String() string { +func (s GetRestoreJobMetadataInput) String() string { return awsutil.Prettify(s) } @@ -12909,27 +16833,44 @@ func (s DescribeRegionSettingsInput) 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 DescribeRegionSettingsInput) GoString() string { +func (s GetRestoreJobMetadataInput) GoString() string { return s.String() } -type DescribeRegionSettingsOutput struct { +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRestoreJobMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreJobMetadataInput"} + if s.RestoreJobId == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) + } + if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *GetRestoreJobMetadataInput) SetRestoreJobId(v string) *GetRestoreJobMetadataInput { + s.RestoreJobId = &v + return s +} + +type GetRestoreJobMetadataOutput struct { _ struct{} `type:"structure"` - // Returns whether Backup fully manages the backups for a resource type. - // - // For the benefits of full Backup management, see Full Backup management (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#full-management). - // - // For a list of resource types and whether each supports full Backup management, - // see the Feature availability by resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) - // table. + // This contains the metadata of the specified backup job. // - // If "DynamoDB":false, you can enable full Backup management for DynamoDB backup - // by enabling Backup's advanced DynamoDB backup features (https://docs.aws.amazon.com/aws-backup/latest/devguide/advanced-ddb-backup.html#advanced-ddb-backup-enable-cli). - ResourceTypeManagementPreference map[string]*bool `type:"map"` + // Metadata is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetRestoreJobMetadataOutput's + // String and GoString methods. + Metadata map[string]*string `type:"map" sensitive:"true"` - // Returns a list of all services along with the opt-in preferences in the Region. - ResourceTypeOptInPreference map[string]*bool `type:"map"` + // This is a unique identifier of a restore job within Backup. + RestoreJobId *string `type:"string"` } // String returns the string representation. @@ -12937,7 +16878,7 @@ type DescribeRegionSettingsOutput 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 DescribeRegionSettingsOutput) String() string { +func (s GetRestoreJobMetadataOutput) String() string { return awsutil.Prettify(s) } @@ -12946,31 +16887,41 @@ func (s DescribeRegionSettingsOutput) 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 DescribeRegionSettingsOutput) GoString() string { +func (s GetRestoreJobMetadataOutput) GoString() string { return s.String() } -// SetResourceTypeManagementPreference sets the ResourceTypeManagementPreference field's value. -func (s *DescribeRegionSettingsOutput) SetResourceTypeManagementPreference(v map[string]*bool) *DescribeRegionSettingsOutput { - s.ResourceTypeManagementPreference = v +// SetMetadata sets the Metadata field's value. +func (s *GetRestoreJobMetadataOutput) SetMetadata(v map[string]*string) *GetRestoreJobMetadataOutput { + s.Metadata = v return s } -// SetResourceTypeOptInPreference sets the ResourceTypeOptInPreference field's value. -func (s *DescribeRegionSettingsOutput) SetResourceTypeOptInPreference(v map[string]*bool) *DescribeRegionSettingsOutput { - s.ResourceTypeOptInPreference = v +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *GetRestoreJobMetadataOutput) SetRestoreJobId(v string) *GetRestoreJobMetadataOutput { + s.RestoreJobId = &v return s } -type DescribeReportJobInput struct { +type GetRestoreTestingInferredMetadataInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The identifier of the report job. A unique, randomly generated, Unicode, - // UTF-8 encoded string that is at most 1,024 bytes long. The report job ID - // cannot be edited. + // This is the account ID of the specified backup vault. + BackupVaultAccountId *string `location:"querystring" locationName:"BackupVaultAccountId" type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web ServicesRegion where they are created. They consist of letters, + // numbers, and hyphens. // - // ReportJobId is a required field - ReportJobId *string `location:"uri" locationName:"reportJobId" type:"string" required:"true"` + // BackupVaultName is a required field + BackupVaultName *string `location:"querystring" locationName:"BackupVaultName" type:"string" required:"true"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + // + // RecoveryPointArn is a required field + RecoveryPointArn *string `location:"querystring" locationName:"RecoveryPointArn" type:"string" required:"true"` } // String returns the string representation. @@ -12978,7 +16929,7 @@ type DescribeReportJobInput 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 DescribeReportJobInput) String() string { +func (s GetRestoreTestingInferredMetadataInput) String() string { return awsutil.Prettify(s) } @@ -12987,18 +16938,18 @@ func (s DescribeReportJobInput) 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 DescribeReportJobInput) GoString() string { +func (s GetRestoreTestingInferredMetadataInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeReportJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeReportJobInput"} - if s.ReportJobId == nil { - invalidParams.Add(request.NewErrParamRequired("ReportJobId")) +func (s *GetRestoreTestingInferredMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingInferredMetadataInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.ReportJobId != nil && len(*s.ReportJobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ReportJobId", 1)) + if s.RecoveryPointArn == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) } if invalidParams.Len() > 0 { @@ -13007,19 +16958,31 @@ func (s *DescribeReportJobInput) Validate() error { return nil } -// SetReportJobId sets the ReportJobId field's value. -func (s *DescribeReportJobInput) SetReportJobId(v string) *DescribeReportJobInput { - s.ReportJobId = &v +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetBackupVaultAccountId(v string) *GetRestoreTestingInferredMetadataInput { + s.BackupVaultAccountId = &v return s } -type DescribeReportJobOutput struct { +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetBackupVaultName(v string) *GetRestoreTestingInferredMetadataInput { + s.BackupVaultName = &v + return s +} + +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *GetRestoreTestingInferredMetadataInput) SetRecoveryPointArn(v string) *GetRestoreTestingInferredMetadataInput { + s.RecoveryPointArn = &v + return s +} + +type GetRestoreTestingInferredMetadataOutput struct { _ struct{} `type:"structure"` - // A list of information about a report job, including its completion and creation - // times, report destination, unique report job ID, Amazon Resource Name (ARN), - // report template, status, and status message. - ReportJob *ReportJob `type:"structure"` + // This is a string map of the metadata inferred from the request. + // + // InferredMetadata is a required field + InferredMetadata map[string]*string `type:"map" required:"true"` } // String returns the string representation. @@ -13027,7 +16990,7 @@ type DescribeReportJobOutput 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 DescribeReportJobOutput) String() string { +func (s GetRestoreTestingInferredMetadataOutput) String() string { return awsutil.Prettify(s) } @@ -13036,23 +16999,23 @@ func (s DescribeReportJobOutput) 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 DescribeReportJobOutput) GoString() string { +func (s GetRestoreTestingInferredMetadataOutput) GoString() string { return s.String() } -// SetReportJob sets the ReportJob field's value. -func (s *DescribeReportJobOutput) SetReportJob(v *ReportJob) *DescribeReportJobOutput { - s.ReportJob = v +// SetInferredMetadata sets the InferredMetadata field's value. +func (s *GetRestoreTestingInferredMetadataOutput) SetInferredMetadata(v map[string]*string) *GetRestoreTestingInferredMetadataOutput { + s.InferredMetadata = v return s } -type DescribeReportPlanInput struct { +type GetRestoreTestingPlanInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The unique name of a report plan. + // Required unique name of the restore testing plan. // - // ReportPlanName is a required field - ReportPlanName *string `location:"uri" locationName:"reportPlanName" min:"1" type:"string" required:"true"` + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` } // String returns the string representation. @@ -13060,7 +17023,7 @@ type DescribeReportPlanInput 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 DescribeReportPlanInput) String() string { +func (s GetRestoreTestingPlanInput) String() string { return awsutil.Prettify(s) } @@ -13069,18 +17032,18 @@ func (s DescribeReportPlanInput) 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 DescribeReportPlanInput) GoString() string { +func (s GetRestoreTestingPlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeReportPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeReportPlanInput"} - if s.ReportPlanName == nil { - invalidParams.Add(request.NewErrParamRequired("ReportPlanName")) +func (s *GetRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingPlanInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) } - if s.ReportPlanName != nil && len(*s.ReportPlanName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ReportPlanName", 1)) + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) } if invalidParams.Len() > 0 { @@ -13089,20 +17052,19 @@ func (s *DescribeReportPlanInput) Validate() error { return nil } -// SetReportPlanName sets the ReportPlanName field's value. -func (s *DescribeReportPlanInput) SetReportPlanName(v string) *DescribeReportPlanInput { - s.ReportPlanName = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *GetRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *GetRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v return s } -type DescribeReportPlanOutput struct { +type GetRestoreTestingPlanOutput struct { _ struct{} `type:"structure"` - // Returns details about the report plan that is specified by its name. These - // details include the report plan's Amazon Resource Name (ARN), description, - // settings, delivery channel, deployment status, creation time, and last attempted - // and successful run times. - ReportPlan *ReportPlan `type:"structure"` + // Specifies the body of a restore testing plan. Includes RestoreTestingPlanName. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForGet `type:"structure" required:"true"` } // String returns the string representation. @@ -13110,7 +17072,7 @@ type DescribeReportPlanOutput 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 DescribeReportPlanOutput) String() string { +func (s GetRestoreTestingPlanOutput) String() string { return awsutil.Prettify(s) } @@ -13119,23 +17081,28 @@ func (s DescribeReportPlanOutput) 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 DescribeReportPlanOutput) GoString() string { +func (s GetRestoreTestingPlanOutput) GoString() string { return s.String() } -// SetReportPlan sets the ReportPlan field's value. -func (s *DescribeReportPlanOutput) SetReportPlan(v *ReportPlan) *DescribeReportPlanOutput { - s.ReportPlan = v +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *GetRestoreTestingPlanOutput) SetRestoreTestingPlan(v *RestoreTestingPlanForGet) *GetRestoreTestingPlanOutput { + s.RestoreTestingPlan = v return s } -type DescribeRestoreJobInput struct { +type GetRestoreTestingSelectionInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies the job that restores a recovery point. + // Required unique name of the restore testing plan. // - // RestoreJobId is a required field - RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // Required unique name of the restore testing selection. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" type:"string" required:"true"` } // String returns the string representation. @@ -13143,7 +17110,7 @@ type DescribeRestoreJobInput 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 DescribeRestoreJobInput) String() string { +func (s GetRestoreTestingSelectionInput) String() string { return awsutil.Prettify(s) } @@ -13152,18 +17119,24 @@ func (s DescribeRestoreJobInput) 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 DescribeRestoreJobInput) GoString() string { +func (s GetRestoreTestingSelectionInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribeRestoreJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribeRestoreJobInput"} - if s.RestoreJobId == nil { - invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) +func (s *GetRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) } - if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) } if invalidParams.Len() > 0 { @@ -13172,65 +17145,98 @@ func (s *DescribeRestoreJobInput) Validate() error { return nil } -// SetRestoreJobId sets the RestoreJobId field's value. -func (s *DescribeRestoreJobInput) SetRestoreJobId(v string) *DescribeRestoreJobInput { - s.RestoreJobId = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *GetRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *GetRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v return s } -type DescribeRestoreJobOutput struct { - _ struct{} `type:"structure"` - - // Returns the account ID that owns the restore job. - AccountId *string `type:"string"` - - // The size, in bytes, of the restored resource. - BackupSizeInBytes *int64 `type:"long"` - - // The date and time that a job to restore a recovery point is completed, in - // Unix format and Coordinated Universal Time (UTC). The value of CompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *GetRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *GetRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v + return s +} - // An Amazon Resource Name (ARN) that uniquely identifies a resource whose recovery - // point is being restored. The format of the ARN depends on the resource type - // of the backed-up resource. - CreatedResourceArn *string `type:"string"` +type GetRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` - // The date and time that a restore job is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` + // Unique name of the restore testing selection. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForGet `type:"structure" required:"true"` +} - // The amount of time in minutes that a job restoring a recovery point is expected - // to take. - ExpectedCompletionTimeMinutes *int64 `type:"long"` +// 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 GetRestoreTestingSelectionOutput) String() string { + return awsutil.Prettify(s) +} - // Specifies the IAM role ARN used to create the target recovery point; for - // example, arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` +// 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 GetRestoreTestingSelectionOutput) GoString() string { + return s.String() +} - // Contains an estimated percentage that is complete of a job at the time the - // job status was queried. - PercentDone *string `type:"string"` +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *GetRestoreTestingSelectionOutput) SetRestoreTestingSelection(v *RestoreTestingSelectionForGet) *GetRestoreTestingSelectionOutput { + s.RestoreTestingSelection = v + return s +} - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` +type GetSupportedResourceTypesInput struct { + _ struct{} `type:"structure" nopayload:"true"` +} - // Returns metadata associated with a restore job listed by resource type. - ResourceType *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 GetSupportedResourceTypesInput) String() string { + return awsutil.Prettify(s) +} - // Uniquely identifies the job that restores a recovery point. - RestoreJobId *string `type:"string"` +// 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 GetSupportedResourceTypesInput) GoString() string { + return s.String() +} - // Status code specifying the state of the job that is initiated by Backup to - // restore a recovery point. - Status *string `type:"string" enum:"RestoreJobStatus"` +type GetSupportedResourceTypesOutput struct { + _ struct{} `type:"structure"` - // A message showing the status of a job to restore a recovery point. - StatusMessage *string `type:"string"` + // Contains a string with the supported Amazon Web Services resource types: + // + // * Aurora for Amazon Aurora + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSX for Amazon FSx + // + // * RDS for Amazon Relational Database Service + // + // * Storage Gateway for Storage Gateway + // + // * DocDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * Neptune for Amazon Neptune + ResourceTypes []*string `type:"list"` } // String returns the string representation. @@ -13238,7 +17244,7 @@ type DescribeRestoreJobOutput 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 DescribeRestoreJobOutput) String() string { +func (s GetSupportedResourceTypesOutput) String() string { return awsutil.Prettify(s) } @@ -13247,104 +17253,100 @@ func (s DescribeRestoreJobOutput) 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 DescribeRestoreJobOutput) GoString() string { +func (s GetSupportedResourceTypesOutput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *DescribeRestoreJobOutput) SetAccountId(v string) *DescribeRestoreJobOutput { - s.AccountId = &v +// SetResourceTypes sets the ResourceTypes field's value. +func (s *GetSupportedResourceTypesOutput) SetResourceTypes(v []*string) *GetSupportedResourceTypesOutput { + s.ResourceTypes = v return s } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *DescribeRestoreJobOutput) SetBackupSizeInBytes(v int64) *DescribeRestoreJobOutput { - s.BackupSizeInBytes = &v - return s -} +// Indicates that something is wrong with a parameter's value. For example, +// the value is out of range. +type InvalidParameterValueException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` -// SetCompletionDate sets the CompletionDate field's value. -func (s *DescribeRestoreJobOutput) SetCompletionDate(v time.Time) *DescribeRestoreJobOutput { - s.CompletionDate = &v - return s + Code_ *string `locationName:"Code" type:"string"` + + Context *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` + + Type *string `type:"string"` } -// SetCreatedResourceArn sets the CreatedResourceArn field's value. -func (s *DescribeRestoreJobOutput) SetCreatedResourceArn(v string) *DescribeRestoreJobOutput { - s.CreatedResourceArn = &v - return s +// 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 InvalidParameterValueException) String() string { + return awsutil.Prettify(s) } -// SetCreationDate sets the CreationDate field's value. -func (s *DescribeRestoreJobOutput) SetCreationDate(v time.Time) *DescribeRestoreJobOutput { - s.CreationDate = &v - return 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 InvalidParameterValueException) GoString() string { + return s.String() } -// SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. -func (s *DescribeRestoreJobOutput) SetExpectedCompletionTimeMinutes(v int64) *DescribeRestoreJobOutput { - s.ExpectedCompletionTimeMinutes = &v - return s +func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { + return &InvalidParameterValueException{ + RespMetadata: v, + } } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *DescribeRestoreJobOutput) SetIamRoleArn(v string) *DescribeRestoreJobOutput { - s.IamRoleArn = &v - return s +// Code returns the exception type name. +func (s *InvalidParameterValueException) Code() string { + return "InvalidParameterValueException" } -// SetPercentDone sets the PercentDone field's value. -func (s *DescribeRestoreJobOutput) SetPercentDone(v string) *DescribeRestoreJobOutput { - s.PercentDone = &v - return s +// Message returns the exception's message. +func (s *InvalidParameterValueException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DescribeRestoreJobOutput) SetRecoveryPointArn(v string) *DescribeRestoreJobOutput { - s.RecoveryPointArn = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidParameterValueException) OrigErr() error { + return nil } -// SetResourceType sets the ResourceType field's value. -func (s *DescribeRestoreJobOutput) SetResourceType(v string) *DescribeRestoreJobOutput { - s.ResourceType = &v - return s +func (s *InvalidParameterValueException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetRestoreJobId sets the RestoreJobId field's value. -func (s *DescribeRestoreJobOutput) SetRestoreJobId(v string) *DescribeRestoreJobOutput { - s.RestoreJobId = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidParameterValueException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetStatus sets the Status field's value. -func (s *DescribeRestoreJobOutput) SetStatus(v string) *DescribeRestoreJobOutput { - s.Status = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *InvalidParameterValueException) RequestID() string { + return s.RespMetadata.RequestID } -// SetStatusMessage sets the StatusMessage field's value. -func (s *DescribeRestoreJobOutput) SetStatusMessage(v string) *DescribeRestoreJobOutput { - s.StatusMessage = &v - return s -} +// Indicates that something is wrong with the input to the request. For example, +// a parameter is of the wrong type. +type InvalidRequestException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` -type DisassociateRecoveryPointFromParentInput struct { - _ struct{} `type:"structure" nopayload:"true"` + Code_ *string `locationName:"Code" type:"string"` - // This is the name of a logical container where the child (nested) recovery - // point is stored. Backup vaults are identified by names that are unique to - // the account used to create them and the Amazon Web Services Region where - // they are created. They consist of lowercase letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + Context *string `type:"string"` - // This is the Amazon Resource Name (ARN) that uniquely identifies the child - // (nested) recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - // - // RecoveryPointArn is a required field - RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` + Message_ *string `locationName:"Message" type:"string"` + + Type *string `type:"string"` } // String returns the string representation. @@ -13352,7 +17354,7 @@ type DisassociateRecoveryPointFromParentInput 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 DisassociateRecoveryPointFromParentInput) String() string { +func (s InvalidRequestException) String() string { return awsutil.Prettify(s) } @@ -13361,79 +17363,61 @@ func (s DisassociateRecoveryPointFromParentInput) 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 DisassociateRecoveryPointFromParentInput) GoString() string { +func (s InvalidRequestException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateRecoveryPointFromParentInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateRecoveryPointFromParentInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.RecoveryPointArn == nil { - invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) - } - if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) +func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { + return &InvalidRequestException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *InvalidRequestException) Code() string { + return "InvalidRequestException" } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DisassociateRecoveryPointFromParentInput) SetBackupVaultName(v string) *DisassociateRecoveryPointFromParentInput { - s.BackupVaultName = &v - return s +// Message returns the exception's message. +func (s *InvalidRequestException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DisassociateRecoveryPointFromParentInput) SetRecoveryPointArn(v string) *DisassociateRecoveryPointFromParentInput { - s.RecoveryPointArn = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidRequestException) OrigErr() error { + return nil } -type DisassociateRecoveryPointFromParentOutput struct { - _ struct{} `type:"structure"` +func (s *InvalidRequestException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.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 DisassociateRecoveryPointFromParentOutput) String() string { - return awsutil.Prettify(s) +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidRequestException) StatusCode() int { + return s.RespMetadata.StatusCode } -// 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 DisassociateRecoveryPointFromParentOutput) GoString() string { - return s.String() +// RequestID returns the service's response RequestID for request. +func (s *InvalidRequestException) RequestID() string { + return s.RespMetadata.RequestID } -type DisassociateRecoveryPointInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Backup is already performing an action on this recovery point. It can't perform +// the action you requested until the first action finishes. Try again later. +type InvalidResourceStateException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // The unique name of an Backup vault. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + Code_ *string `locationName:"Code" type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies an Backup recovery - // point. - // - // RecoveryPointArn is a required field - RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` + Context *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` + + Type *string `type:"string"` } // String returns the string representation. @@ -13441,7 +17425,7 @@ type DisassociateRecoveryPointInput 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 DisassociateRecoveryPointInput) String() string { +func (s InvalidResourceStateException) String() string { return awsutil.Prettify(s) } @@ -13450,180 +17434,173 @@ func (s DisassociateRecoveryPointInput) 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 DisassociateRecoveryPointInput) GoString() string { +func (s InvalidResourceStateException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *DisassociateRecoveryPointInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisassociateRecoveryPointInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.RecoveryPointArn == nil { - invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) - } - if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) +func newErrorInvalidResourceStateException(v protocol.ResponseMetadata) error { + return &InvalidResourceStateException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *InvalidResourceStateException) Code() string { + return "InvalidResourceStateException" } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *DisassociateRecoveryPointInput) SetBackupVaultName(v string) *DisassociateRecoveryPointInput { - s.BackupVaultName = &v - return s +// Message returns the exception's message. +func (s *InvalidResourceStateException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *DisassociateRecoveryPointInput) SetRecoveryPointArn(v string) *DisassociateRecoveryPointInput { - s.RecoveryPointArn = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidResourceStateException) OrigErr() error { + return nil } -type DisassociateRecoveryPointOutput struct { - _ struct{} `type:"structure"` +func (s *InvalidResourceStateException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.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 DisassociateRecoveryPointOutput) String() string { - return awsutil.Prettify(s) +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidResourceStateException) StatusCode() int { + return s.RespMetadata.StatusCode } -// 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 DisassociateRecoveryPointOutput) GoString() string { - return s.String() +// RequestID returns the service's response RequestID for request. +func (s *InvalidResourceStateException) RequestID() string { + return s.RespMetadata.RequestID } -type ExportBackupPlanTemplateInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Contains detailed information about a backup job. +type Job struct { + _ struct{} `type:"structure"` - // Uniquely identifies a backup plan. + // The account ID that owns the backup job. + AccountId *string `type:"string"` + + // Uniquely identifies a request to Backup to back up a resource. + BackupJobId *string `type:"string"` + + // Specifies the backup option for a selected resource. This option is only + // available for Windows Volume Shadow Copy Service (VSS) backup jobs. // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` -} + // Valid values: Set to "WindowsVSS":"enabled" to enable the WindowsVSS backup + // option and create a Windows VSS backup. Set to "WindowsVSS":"disabled" to + // create a regular backup. If you specify an invalid option, you get an InvalidParameterValueException + // exception. + BackupOptions map[string]*string `type:"map"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ExportBackupPlanTemplateInput) String() string { - return awsutil.Prettify(s) -} + // The size, in bytes, of a backup. + BackupSizeInBytes *int64 `type:"long"` + + // Represents the type of backup for a backup job. + BackupType *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for + // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + BackupVaultName *string `type:"string"` + + // The size in bytes transferred to a backup vault at the time that the job + // status was queried. + BytesTransferred *int64 `type:"long"` + + // The date and time a job to create a backup job is completed, in Unix format + // and Coordinated Universal Time (UTC). The value of CompletionDate is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // Contains identifying information about the creation of a backup job, including + // the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId of the + // backup plan used to create it. + CreatedBy *RecoveryPointCreator `type:"structure"` -// 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 ExportBackupPlanTemplateInput) GoString() string { - return s.String() -} + // The date and time a backup job is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` -// Validate inspects the fields of the type to determine if they are valid. -func (s *ExportBackupPlanTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ExportBackupPlanTemplateInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } + // The date and time a job to back up resources is expected to be completed, + // in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + ExpectedCompletionDate *time.Time `type:"timestamp"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // Specifies the IAM role ARN used to create the target recovery point. IAM + // roles other than the default role must include either AWSBackup or AwsBackup + // in the role name. For example, arn:aws:iam::123456789012:role/AWSBackupRDSAccess. + // Role names without those strings lack permissions to perform backup jobs. + IamRoleArn *string `type:"string"` -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *ExportBackupPlanTemplateInput) SetBackupPlanId(v string) *ExportBackupPlanTemplateInput { - s.BackupPlanId = &v - return s -} + // This is the date on which the backup job was initiated. + InitiationDate *time.Time `type:"timestamp"` -type ExportBackupPlanTemplateOutput struct { - _ struct{} `type:"structure"` + // This is a boolean value indicating this is a parent (composite) backup job. + IsParent *bool `type:"boolean"` - // The body of a backup plan template in JSON format. + // This parameter is the job count for the specified message category. // - // This is a signed JSON document that cannot be modified before being passed - // to GetBackupPlanFromJSON. - BackupPlanTemplateJson *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 ExportBackupPlanTemplateOutput) String() string { - return awsutil.Prettify(s) -} + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `type:"string"` -// 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 ExportBackupPlanTemplateOutput) GoString() string { - return s.String() -} + // This uniquely identifies a request to Backup to back up a resource. The return + // will be the parent (composite) job ID. + ParentJobId *string `type:"string"` -// SetBackupPlanTemplateJson sets the BackupPlanTemplateJson field's value. -func (s *ExportBackupPlanTemplateOutput) SetBackupPlanTemplateJson(v string) *ExportBackupPlanTemplateOutput { - s.BackupPlanTemplateJson = &v - return s -} + // Contains an estimated percentage complete of a job at the time the job status + // was queried. + PercentDone *string `type:"string"` -// Contains detailed information about a framework. Frameworks contain controls, -// which evaluate and report on your backup events and resources. Frameworks -// generate daily compliance results. -type Framework struct { - _ struct{} `type:"structure"` + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` - // The date and time that a framework is created, in ISO 8601 representation. - // The value of CreationTime is accurate to milliseconds. For example, 2020-07-10T15:00:00.000-08:00 - // represents the 10th of July 2020 at 3:00 PM 8 hours behind UTC. - CreationTime *time.Time `type:"timestamp"` + // An ARN that uniquely identifies a resource. The format of the ARN depends + // on the resource type. + ResourceArn *string `type:"string"` - // The deployment status of a framework. The statuses are: - // - // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED - // | FAILED - DeploymentStatus *string `type:"string"` + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - FrameworkArn *string `type:"string"` + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) + // backups, the only supported resource type is Amazon EC2. + ResourceType *string `type:"string"` - // An optional description of the framework with a maximum 1,024 characters. - FrameworkDescription *string `type:"string"` + // Specifies the time in Unix format and Coordinated Universal Time (UTC) when + // a backup job must be started before it is canceled. The value is calculated + // by adding the start window to the scheduled time. So if the scheduled time + // were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 + // PM on the date specified. The value of StartBy is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + StartBy *time.Time `type:"timestamp"` - // The unique name of a framework. This name is between 1 and 256 characters, - // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), - // and underscores (_). - FrameworkName *string `min:"1" type:"string"` + // The current state of a backup job. + State *string `type:"string" enum:"JobState"` - // The number of controls contained by the framework. - NumberOfControls *int64 `type:"integer"` + // A detailed message explaining the status of the job to back up a resource. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -13631,7 +17608,7 @@ type Framework 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 Framework) String() string { +func (s Job) String() string { return awsutil.Prettify(s) } @@ -13640,204 +17617,183 @@ func (s Framework) 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 Framework) GoString() string { +func (s Job) GoString() string { return s.String() } -// SetCreationTime sets the CreationTime field's value. -func (s *Framework) SetCreationTime(v time.Time) *Framework { - s.CreationTime = &v +// SetAccountId sets the AccountId field's value. +func (s *Job) SetAccountId(v string) *Job { + s.AccountId = &v return s } -// SetDeploymentStatus sets the DeploymentStatus field's value. -func (s *Framework) SetDeploymentStatus(v string) *Framework { - s.DeploymentStatus = &v +// SetBackupJobId sets the BackupJobId field's value. +func (s *Job) SetBackupJobId(v string) *Job { + s.BackupJobId = &v return s } -// SetFrameworkArn sets the FrameworkArn field's value. -func (s *Framework) SetFrameworkArn(v string) *Framework { - s.FrameworkArn = &v +// SetBackupOptions sets the BackupOptions field's value. +func (s *Job) SetBackupOptions(v map[string]*string) *Job { + s.BackupOptions = v return s } -// SetFrameworkDescription sets the FrameworkDescription field's value. -func (s *Framework) SetFrameworkDescription(v string) *Framework { - s.FrameworkDescription = &v +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *Job) SetBackupSizeInBytes(v int64) *Job { + s.BackupSizeInBytes = &v return s } -// SetFrameworkName sets the FrameworkName field's value. -func (s *Framework) SetFrameworkName(v string) *Framework { - s.FrameworkName = &v +// SetBackupType sets the BackupType field's value. +func (s *Job) SetBackupType(v string) *Job { + s.BackupType = &v return s } -// SetNumberOfControls sets the NumberOfControls field's value. -func (s *Framework) SetNumberOfControls(v int64) *Framework { - s.NumberOfControls = &v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *Job) SetBackupVaultArn(v string) *Job { + s.BackupVaultArn = &v return s } -// Contains detailed information about all of the controls of a framework. Each -// framework must contain at least one control. -type FrameworkControl struct { - _ struct{} `type:"structure"` - - // A list of ParameterName and ParameterValue pairs. - ControlInputParameters []*ControlInputParameter `type:"list"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *Job) SetBackupVaultName(v string) *Job { + s.BackupVaultName = &v + return s +} - // The name of a control. This name is between 1 and 256 characters. - // - // ControlName is a required field - ControlName *string `type:"string" required:"true"` +// SetBytesTransferred sets the BytesTransferred field's value. +func (s *Job) SetBytesTransferred(v int64) *Job { + s.BytesTransferred = &v + return s +} - // The scope of a control. The control scope defines what the control will evaluate. - // Three examples of control scopes are: a specific backup plan, all backup - // plans with a specific tag, or all backup plans. - ControlScope *ControlScope `type:"structure"` +// SetCompletionDate sets the CompletionDate field's value. +func (s *Job) SetCompletionDate(v time.Time) *Job { + s.CompletionDate = &v + return s } -// 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 FrameworkControl) String() string { - return awsutil.Prettify(s) +// SetCreatedBy sets the CreatedBy field's value. +func (s *Job) SetCreatedBy(v *RecoveryPointCreator) *Job { + s.CreatedBy = v + return 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 FrameworkControl) GoString() string { - return s.String() +// SetCreationDate sets the CreationDate field's value. +func (s *Job) SetCreationDate(v time.Time) *Job { + s.CreationDate = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *FrameworkControl) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "FrameworkControl"} - if s.ControlName == nil { - invalidParams.Add(request.NewErrParamRequired("ControlName")) - } - if s.ControlScope != nil { - if err := s.ControlScope.Validate(); err != nil { - invalidParams.AddNested("ControlScope", err.(request.ErrInvalidParams)) - } - } +// SetExpectedCompletionDate sets the ExpectedCompletionDate field's value. +func (s *Job) SetExpectedCompletionDate(v time.Time) *Job { + s.ExpectedCompletionDate = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *Job) SetIamRoleArn(v string) *Job { + s.IamRoleArn = &v + return s } -// SetControlInputParameters sets the ControlInputParameters field's value. -func (s *FrameworkControl) SetControlInputParameters(v []*ControlInputParameter) *FrameworkControl { - s.ControlInputParameters = v +// SetInitiationDate sets the InitiationDate field's value. +func (s *Job) SetInitiationDate(v time.Time) *Job { + s.InitiationDate = &v return s } -// SetControlName sets the ControlName field's value. -func (s *FrameworkControl) SetControlName(v string) *FrameworkControl { - s.ControlName = &v +// SetIsParent sets the IsParent field's value. +func (s *Job) SetIsParent(v bool) *Job { + s.IsParent = &v return s } -// SetControlScope sets the ControlScope field's value. -func (s *FrameworkControl) SetControlScope(v *ControlScope) *FrameworkControl { - s.ControlScope = v +// SetMessageCategory sets the MessageCategory field's value. +func (s *Job) SetMessageCategory(v string) *Job { + s.MessageCategory = &v return s } -type GetBackupPlanFromJSONInput struct { - _ struct{} `type:"structure"` - - // A customer-supplied backup plan document in JSON format. - // - // BackupPlanTemplateJson is a required field - BackupPlanTemplateJson *string `type:"string" required:"true"` +// SetParentJobId sets the ParentJobId field's value. +func (s *Job) SetParentJobId(v string) *Job { + s.ParentJobId = &v + return s } -// 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 GetBackupPlanFromJSONInput) String() string { - return awsutil.Prettify(s) +// SetPercentDone sets the PercentDone field's value. +func (s *Job) SetPercentDone(v string) *Job { + s.PercentDone = &v + return 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 GetBackupPlanFromJSONInput) GoString() string { - return s.String() +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *Job) SetRecoveryPointArn(v string) *Job { + s.RecoveryPointArn = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupPlanFromJSONInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanFromJSONInput"} - if s.BackupPlanTemplateJson == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanTemplateJson")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetResourceArn sets the ResourceArn field's value. +func (s *Job) SetResourceArn(v string) *Job { + s.ResourceArn = &v + return s } -// SetBackupPlanTemplateJson sets the BackupPlanTemplateJson field's value. -func (s *GetBackupPlanFromJSONInput) SetBackupPlanTemplateJson(v string) *GetBackupPlanFromJSONInput { - s.BackupPlanTemplateJson = &v +// SetResourceName sets the ResourceName field's value. +func (s *Job) SetResourceName(v string) *Job { + s.ResourceName = &v return s } -type GetBackupPlanFromJSONOutput struct { - _ struct{} `type:"structure"` - - // Specifies the body of a backup plan. Includes a BackupPlanName and one or - // more sets of Rules. - BackupPlan *Plan `type:"structure"` +// SetResourceType sets the ResourceType field's value. +func (s *Job) SetResourceType(v string) *Job { + s.ResourceType = &v + return s } -// 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 GetBackupPlanFromJSONOutput) String() string { - return awsutil.Prettify(s) +// SetStartBy sets the StartBy field's value. +func (s *Job) SetStartBy(v time.Time) *Job { + s.StartBy = &v + return 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 GetBackupPlanFromJSONOutput) GoString() string { - return s.String() +// SetState sets the State field's value. +func (s *Job) SetState(v string) *Job { + s.State = &v + return s } -// SetBackupPlan sets the BackupPlan field's value. -func (s *GetBackupPlanFromJSONOutput) SetBackupPlan(v *Plan) *GetBackupPlanFromJSONOutput { - s.BackupPlan = v +// SetStatusMessage sets the StatusMessage field's value. +func (s *Job) SetStatusMessage(v string) *Job { + s.StatusMessage = &v return s } -type GetBackupPlanFromTemplateInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Pair of two related strings. Allowed characters are letters, white space, +// and numbers that can be represented in UTF-8 and the following characters: +// + - = . _ : / +type KeyValue struct { + _ struct{} `type:"structure"` - // Uniquely identifies a stored backup plan template. + // The tag key (String). The key can't start with aws:. // - // BackupPlanTemplateId is a required field - BackupPlanTemplateId *string `location:"uri" locationName:"templateId" type:"string" required:"true"` + // Length Constraints: Minimum length of 1. Maximum length of 128. + // + // Pattern: ^(?![aA]{1}[wW]{1}[sS]{1}:)([\p{L}\p{Z}\p{N}_.:/=+\-@]+)$ + // + // Key is a required field + Key *string `type:"string" required:"true"` + + // The value of the key. + // + // Length Constraints: Maximum length of 256. + // + // Pattern: ^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ + // + // Value is a required field + Value *string `type:"string" required:"true"` } // String returns the string representation. @@ -13845,7 +17801,7 @@ type GetBackupPlanFromTemplateInput 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 GetBackupPlanFromTemplateInput) String() string { +func (s KeyValue) String() string { return awsutil.Prettify(s) } @@ -13854,18 +17810,18 @@ func (s GetBackupPlanFromTemplateInput) 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 GetBackupPlanFromTemplateInput) GoString() string { +func (s KeyValue) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupPlanFromTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanFromTemplateInput"} - if s.BackupPlanTemplateId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanTemplateId")) +func (s *KeyValue) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "KeyValue"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) } - if s.BackupPlanTemplateId != nil && len(*s.BackupPlanTemplateId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanTemplateId", 1)) + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { @@ -13874,55 +17830,50 @@ func (s *GetBackupPlanFromTemplateInput) Validate() error { return nil } -// SetBackupPlanTemplateId sets the BackupPlanTemplateId field's value. -func (s *GetBackupPlanFromTemplateInput) SetBackupPlanTemplateId(v string) *GetBackupPlanFromTemplateInput { - s.BackupPlanTemplateId = &v +// SetKey sets the Key field's value. +func (s *KeyValue) SetKey(v string) *KeyValue { + s.Key = &v return s } -type GetBackupPlanFromTemplateOutput struct { +// SetValue sets the Value field's value. +func (s *KeyValue) SetValue(v string) *KeyValue { + s.Value = &v + return s +} + +// A legal hold is an administrative tool that helps prevent backups from being +// deleted while under a hold. While the hold is in place, backups under a hold +// cannot be deleted and lifecycle policies that would alter the backup status +// (such as transition to cold storage) are delayed until the legal hold is +// removed. A backup can have more than one legal hold. Legal holds are applied +// to one or more backups (also known as recovery points). These backups can +// be filtered by resource types and by resource IDs. +type LegalHold struct { _ struct{} `type:"structure"` - // Returns the body of a backup plan based on the target template, including - // the name, rules, and backup vault of the plan. - BackupPlanDocument *Plan `type:"structure"` -} + // This is the time in number format when legal hold was cancelled. + CancellationDate *time.Time `type:"timestamp"` -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s GetBackupPlanFromTemplateOutput) String() string { - return awsutil.Prettify(s) -} + // This is the time in number format when legal hold was created. + CreationDate *time.Time `type:"timestamp"` -// 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 GetBackupPlanFromTemplateOutput) GoString() string { - return s.String() -} + // This is the description of a legal hold. + Description *string `type:"string"` -// SetBackupPlanDocument sets the BackupPlanDocument field's value. -func (s *GetBackupPlanFromTemplateOutput) SetBackupPlanDocument(v *Plan) *GetBackupPlanFromTemplateOutput { - s.BackupPlanDocument = v - return s -} + // This is an Amazon Resource Number (ARN) that uniquely identifies the legal + // hold; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + LegalHoldArn *string `type:"string"` -type GetBackupPlanInput struct { - _ struct{} `type:"structure" nopayload:"true"` + // ID of specific legal hold on one or more recovery points. + LegalHoldId *string `type:"string"` - // Uniquely identifies a backup plan. - // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + // This is the status of the legal hold. Statuses can be ACTIVE, CREATING, CANCELED, + // and CANCELING. + Status *string `type:"string" enum:"LegalHoldStatus"` - // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most - // 1,024 bytes long. Version IDs cannot be edited. - VersionId *string `location:"querystring" locationName:"versionId" type:"string"` + // This is the title of a legal hold. + Title *string `type:"string"` } // String returns the string representation. @@ -13930,7 +17881,7 @@ type GetBackupPlanInput 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 GetBackupPlanInput) String() string { +func (s LegalHold) String() string { return awsutil.Prettify(s) } @@ -13939,81 +17890,80 @@ func (s GetBackupPlanInput) 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 GetBackupPlanInput) GoString() string { +func (s LegalHold) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupPlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupPlanInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCancellationDate sets the CancellationDate field's value. +func (s *LegalHold) SetCancellationDate(v time.Time) *LegalHold { + s.CancellationDate = &v + return s } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *GetBackupPlanInput) SetBackupPlanId(v string) *GetBackupPlanInput { - s.BackupPlanId = &v +// SetCreationDate sets the CreationDate field's value. +func (s *LegalHold) SetCreationDate(v time.Time) *LegalHold { + s.CreationDate = &v return s } -// SetVersionId sets the VersionId field's value. -func (s *GetBackupPlanInput) SetVersionId(v string) *GetBackupPlanInput { - s.VersionId = &v +// SetDescription sets the Description field's value. +func (s *LegalHold) SetDescription(v string) *LegalHold { + s.Description = &v return s } -type GetBackupPlanOutput struct { - _ struct{} `type:"structure"` - - // Contains a list of BackupOptions for each resource type. The list is populated - // only if the advanced option is set for the backup plan. - AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` - - // Specifies the body of a backup plan. Includes a BackupPlanName and one or - // more sets of Rules. - BackupPlan *Plan `type:"structure"` +// SetLegalHoldArn sets the LegalHoldArn field's value. +func (s *LegalHold) SetLegalHoldArn(v string) *LegalHold { + s.LegalHoldArn = &v + return s +} - // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for - // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. - BackupPlanArn *string `type:"string"` +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *LegalHold) SetLegalHoldId(v string) *LegalHold { + s.LegalHoldId = &v + return s +} - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` +// SetStatus sets the Status field's value. +func (s *LegalHold) SetStatus(v string) *LegalHold { + s.Status = &v + return s +} - // The date and time that a backup plan is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` +// SetTitle sets the Title field's value. +func (s *LegalHold) SetTitle(v string) *LegalHold { + s.Title = &v + return s +} - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. - CreatorRequestId *string `type:"string"` +// Contains an array of Transition objects specifying how long in days before +// a recovery point transitions to cold storage or is deleted. +// +// Backups transitioned to cold storage must be stored in cold storage for a +// minimum of 90 days. Therefore, on the console, the “retention” setting +// must be 90 days greater than the “transition to cold after days” setting. +// The “transition to cold after days” setting cannot be changed after a +// backup has been transitioned to cold. +// +// Resource types that are able to be transitioned to cold storage are listed +// in the "Lifecycle to cold storage" section of the Feature availability by +// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) +// table. Backup ignores this expression for other resource types. +type Lifecycle struct { + _ struct{} `type:"structure"` - // The date and time that a backup plan is deleted, in Unix format and Coordinated - // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - DeletionDate *time.Time `type:"timestamp"` + // Specifies the number of days after creation that a recovery point is deleted. + // Must be greater than 90 days plus MoveToColdStorageAfterDays. + DeleteAfterDays *int64 `type:"long"` - // The last time a job to back up resources was run with this backup plan. A - // date and time, in Unix format and Coordinated Universal Time (UTC). The value - // of LastExecutionDate is accurate to milliseconds. For example, the value - // 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. - LastExecutionDate *time.Time `type:"timestamp"` + // Specifies the number of days after creation that a recovery point is moved + // to cold storage. + MoveToColdStorageAfterDays *int64 `type:"long"` - // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most - // 1,024 bytes long. Version IDs cannot be edited. - VersionId *string `type:"string"` + // Optional Boolean. If this is true, this setting will instruct your backup + // plan to transition supported resources to archive (cold) storage tier in + // accordance with your lifecycle settings. + OptInToArchiveForSupportedResources *bool `type:"boolean"` } // String returns the string representation. @@ -14021,7 +17971,7 @@ type GetBackupPlanOutput 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 GetBackupPlanOutput) String() string { +func (s Lifecycle) String() string { return awsutil.Prettify(s) } @@ -14030,77 +17980,41 @@ func (s GetBackupPlanOutput) 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 GetBackupPlanOutput) GoString() string { +func (s Lifecycle) GoString() string { return s.String() } -// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. -func (s *GetBackupPlanOutput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *GetBackupPlanOutput { - s.AdvancedBackupSettings = v - return s -} - -// SetBackupPlan sets the BackupPlan field's value. -func (s *GetBackupPlanOutput) SetBackupPlan(v *Plan) *GetBackupPlanOutput { - s.BackupPlan = v - return s -} - -// SetBackupPlanArn sets the BackupPlanArn field's value. -func (s *GetBackupPlanOutput) SetBackupPlanArn(v string) *GetBackupPlanOutput { - s.BackupPlanArn = &v - return s -} - -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *GetBackupPlanOutput) SetBackupPlanId(v string) *GetBackupPlanOutput { - s.BackupPlanId = &v - return s -} - -// SetCreationDate sets the CreationDate field's value. -func (s *GetBackupPlanOutput) SetCreationDate(v time.Time) *GetBackupPlanOutput { - s.CreationDate = &v +// SetDeleteAfterDays sets the DeleteAfterDays field's value. +func (s *Lifecycle) SetDeleteAfterDays(v int64) *Lifecycle { + s.DeleteAfterDays = &v return s } -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *GetBackupPlanOutput) SetCreatorRequestId(v string) *GetBackupPlanOutput { - s.CreatorRequestId = &v +// SetMoveToColdStorageAfterDays sets the MoveToColdStorageAfterDays field's value. +func (s *Lifecycle) SetMoveToColdStorageAfterDays(v int64) *Lifecycle { + s.MoveToColdStorageAfterDays = &v return s } -// SetDeletionDate sets the DeletionDate field's value. -func (s *GetBackupPlanOutput) SetDeletionDate(v time.Time) *GetBackupPlanOutput { - s.DeletionDate = &v +// SetOptInToArchiveForSupportedResources sets the OptInToArchiveForSupportedResources field's value. +func (s *Lifecycle) SetOptInToArchiveForSupportedResources(v bool) *Lifecycle { + s.OptInToArchiveForSupportedResources = &v return s } -// SetLastExecutionDate sets the LastExecutionDate field's value. -func (s *GetBackupPlanOutput) SetLastExecutionDate(v time.Time) *GetBackupPlanOutput { - s.LastExecutionDate = &v - return s -} +// A limit in the request has been exceeded; for example, a maximum number of +// items allowed in a request. +type LimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` -// SetVersionId sets the VersionId field's value. -func (s *GetBackupPlanOutput) SetVersionId(v string) *GetBackupPlanOutput { - s.VersionId = &v - return s -} + Code_ *string `locationName:"Code" type:"string"` -type GetBackupSelectionInput struct { - _ struct{} `type:"structure" nopayload:"true"` + Context *string `type:"string"` - // Uniquely identifies a backup plan. - // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + Message_ *string `locationName:"Message" type:"string"` - // Uniquely identifies the body of a request to assign a set of resources to - // a backup plan. - // - // SelectionId is a required field - SelectionId *string `location:"uri" locationName:"selectionId" type:"string" required:"true"` + Type *string `type:"string"` } // String returns the string representation. @@ -14108,7 +18022,7 @@ type GetBackupSelectionInput 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 GetBackupSelectionInput) String() string { +func (s LimitExceededException) String() string { return awsutil.Prettify(s) } @@ -14117,67 +18031,116 @@ func (s GetBackupSelectionInput) 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 GetBackupSelectionInput) GoString() string { +func (s LimitExceededException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupSelectionInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupSelectionInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } - if s.SelectionId == nil { - invalidParams.Add(request.NewErrParamRequired("SelectionId")) - } - if s.SelectionId != nil && len(*s.SelectionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("SelectionId", 1)) +func newErrorLimitExceededException(v protocol.ResponseMetadata) error { + return &LimitExceededException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *LimitExceededException) Code() string { + return "LimitExceededException" +} + +// Message returns the exception's message. +func (s *LimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *LimitExceededException) OrigErr() error { return nil } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *GetBackupSelectionInput) SetBackupPlanId(v string) *GetBackupSelectionInput { - s.BackupPlanId = &v - return s +func (s *LimitExceededException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetSelectionId sets the SelectionId field's value. -func (s *GetBackupSelectionInput) SetSelectionId(v string) *GetBackupSelectionInput { - s.SelectionId = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *LimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode } -type GetBackupSelectionOutput struct { - _ struct{} `type:"structure"` +// RequestID returns the service's response RequestID for request. +func (s *LimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` +type ListBackupJobSummariesInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // Specifies the body of a request to assign a set of resources to a backup - // plan. - BackupSelection *Selection `type:"structure"` + // Returns the job count for the specified account. + // + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. + // + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. + // + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` - // The date and time a backup selection is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` + // This is the period that sets the boundaries for returned results. + // + // Acceptable values include + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. - CreatorRequestId *string `type:"string"` + // This parameter sets the maximum number of items to be returned. + // + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // Uniquely identifies the body of a request to assign a set of resources to - // a backup plan. - SelectionId *string `type:"string"` + // This parameter returns the job count for the specified message category. + // + // Example accepted strings include AccessDenied, Success, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. + // + // The the value ANY returns count of all resource types. + // + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. + // + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. + // + // The the value ANY returns count of all states. + // + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"BackupJobStatus"` } // String returns the string representation. @@ -14185,7 +18148,7 @@ type GetBackupSelectionOutput 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 GetBackupSelectionOutput) String() string { +func (s ListBackupJobSummariesInput) String() string { return awsutil.Prettify(s) } @@ -14194,107 +18157,86 @@ func (s GetBackupSelectionOutput) 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 GetBackupSelectionOutput) GoString() string { +func (s ListBackupJobSummariesInput) GoString() string { return s.String() } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *GetBackupSelectionOutput) SetBackupPlanId(v string) *GetBackupSelectionOutput { - s.BackupPlanId = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupJobSummariesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } -// SetBackupSelection sets the BackupSelection field's value. -func (s *GetBackupSelectionOutput) SetBackupSelection(v *Selection) *GetBackupSelectionOutput { - s.BackupSelection = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetCreationDate sets the CreationDate field's value. -func (s *GetBackupSelectionOutput) SetCreationDate(v time.Time) *GetBackupSelectionOutput { - s.CreationDate = &v +// SetAccountId sets the AccountId field's value. +func (s *ListBackupJobSummariesInput) SetAccountId(v string) *ListBackupJobSummariesInput { + s.AccountId = &v return s } -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *GetBackupSelectionOutput) SetCreatorRequestId(v string) *GetBackupSelectionOutput { - s.CreatorRequestId = &v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListBackupJobSummariesInput) SetAggregationPeriod(v string) *ListBackupJobSummariesInput { + s.AggregationPeriod = &v return s } -// SetSelectionId sets the SelectionId field's value. -func (s *GetBackupSelectionOutput) SetSelectionId(v string) *GetBackupSelectionOutput { - s.SelectionId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupJobSummariesInput) SetMaxResults(v int64) *ListBackupJobSummariesInput { + s.MaxResults = &v return s } -type GetBackupVaultAccessPolicyInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" 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 GetBackupVaultAccessPolicyInput) String() string { - return awsutil.Prettify(s) +// SetMessageCategory sets the MessageCategory field's value. +func (s *ListBackupJobSummariesInput) SetMessageCategory(v string) *ListBackupJobSummariesInput { + s.MessageCategory = &v + return 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 GetBackupVaultAccessPolicyInput) GoString() string { - return s.String() +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobSummariesInput) SetNextToken(v string) *ListBackupJobSummariesInput { + s.NextToken = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupVaultAccessPolicyInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupVaultAccessPolicyInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetResourceType sets the ResourceType field's value. +func (s *ListBackupJobSummariesInput) SetResourceType(v string) *ListBackupJobSummariesInput { + s.ResourceType = &v + return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *GetBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *GetBackupVaultAccessPolicyInput { - s.BackupVaultName = &v +// SetState sets the State field's value. +func (s *ListBackupJobSummariesInput) SetState(v string) *ListBackupJobSummariesInput { + s.State = &v return s } -type GetBackupVaultAccessPolicyOutput struct { +type ListBackupJobSummariesOutput struct { _ struct{} `type:"structure"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for - // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Region where they are created. They consist of lowercase letters, numbers, - // and hyphens. - BackupVaultName *string `type:"string"` + // This request returns a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + BackupJobSummaries []*BackupJobSummary `type:"list"` - // The backup vault access policy document in JSON format. - Policy *string `type:"string"` + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `type:"string"` } // String returns the string representation. @@ -14302,7 +18244,7 @@ type GetBackupVaultAccessPolicyOutput 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 GetBackupVaultAccessPolicyOutput) String() string { +func (s ListBackupJobSummariesOutput) String() string { return awsutil.Prettify(s) } @@ -14311,100 +18253,116 @@ func (s GetBackupVaultAccessPolicyOutput) 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 GetBackupVaultAccessPolicyOutput) GoString() string { +func (s ListBackupJobSummariesOutput) GoString() string { return s.String() } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *GetBackupVaultAccessPolicyOutput) SetBackupVaultArn(v string) *GetBackupVaultAccessPolicyOutput { - s.BackupVaultArn = &v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListBackupJobSummariesOutput) SetAggregationPeriod(v string) *ListBackupJobSummariesOutput { + s.AggregationPeriod = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *GetBackupVaultAccessPolicyOutput) SetBackupVaultName(v string) *GetBackupVaultAccessPolicyOutput { - s.BackupVaultName = &v +// SetBackupJobSummaries sets the BackupJobSummaries field's value. +func (s *ListBackupJobSummariesOutput) SetBackupJobSummaries(v []*BackupJobSummary) *ListBackupJobSummariesOutput { + s.BackupJobSummaries = v return s } -// SetPolicy sets the Policy field's value. -func (s *GetBackupVaultAccessPolicyOutput) SetPolicy(v string) *GetBackupVaultAccessPolicyOutput { - s.Policy = &v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobSummariesOutput) SetNextToken(v string) *ListBackupJobSummariesOutput { + s.NextToken = &v return s } -type GetBackupVaultNotificationsInput struct { +type ListBackupJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. + // The account ID to list the jobs from. Returns only backup jobs associated + // with the specified account ID. // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` -} + // If used from an Organizations management account, passing * returns all jobs + // across the organization. + ByAccountId *string `location:"querystring" locationName:"accountId" 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 GetBackupVaultNotificationsInput) String() string { - return awsutil.Prettify(s) -} + // Returns only backup jobs that will be stored in the specified backup vault. + // Backup vaults are identified by names that are unique to the account used + // to create them and the Amazon Web Services Region where they are created. + // They consist of lowercase letters, numbers, and hyphens. + ByBackupVaultName *string `location:"querystring" locationName:"backupVaultName" type:"string"` -// 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 GetBackupVaultNotificationsInput) GoString() string { - return s.String() -} + // Returns only backup jobs completed after a date expressed in Unix format + // and Coordinated Universal Time (UTC). + ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetBackupVaultNotificationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetBackupVaultNotificationsInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } + // Returns only backup jobs completed before a date expressed in Unix format + // and Coordinated Universal Time (UTC). + ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} + // Returns only backup jobs that were created after the specified date. + ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *GetBackupVaultNotificationsInput) SetBackupVaultName(v string) *GetBackupVaultNotificationsInput { - s.BackupVaultName = &v - return s -} + // Returns only backup jobs that were created before the specified date. + ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` -type GetBackupVaultNotificationsOutput struct { - _ struct{} `type:"structure"` + // This is an optional parameter that can be used to filter out jobs with a + // MessageCategory which matches the value you input. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and InvalidParameters. + // + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // + // The wildcard () returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for - // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` + // This is a filter to list child (nested) jobs based on parent job ID. + ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` + + // Returns only backup jobs that match the specified resource Amazon Resource + // Name (ARN). + ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` + + // Returns only backup jobs for the specified resources: + // + // * Aurora for Amazon Aurora + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * RDS for Amazon Relational Database Service + // + // * Storage Gateway for Storage Gateway + // + // * S3 for Amazon S3 + // + // * VirtualMachine for virtual machines + ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` - // An array of events that indicate the status of jobs to back up resources - // to the backup vault. - BackupVaultEvents []*string `type:"list" enum:"VaultEvent"` + // Returns only backup jobs that are in the specified state. + ByState *string `location:"querystring" locationName:"state" type:"string" enum:"JobState"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Region where they are created. They consist of lowercase letters, numbers, - // and hyphens. - BackupVaultName *string `type:"string"` + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // An ARN that uniquely identifies an Amazon Simple Notification Service (Amazon - // SNS) topic; for example, arn:aws:sns:us-west-2:111122223333:MyTopic. - SNSTopicArn *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -14412,7 +18370,7 @@ type GetBackupVaultNotificationsOutput 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 GetBackupVaultNotificationsOutput) String() string { +func (s ListBackupJobsInput) String() string { return awsutil.Prettify(s) } @@ -14421,120 +18379,113 @@ func (s GetBackupVaultNotificationsOutput) 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 GetBackupVaultNotificationsOutput) GoString() string { +func (s ListBackupJobsInput) GoString() string { return s.String() } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *GetBackupVaultNotificationsOutput) SetBackupVaultArn(v string) *GetBackupVaultNotificationsOutput { - s.BackupVaultArn = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupJobsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetBackupVaultEvents sets the BackupVaultEvents field's value. -func (s *GetBackupVaultNotificationsOutput) SetBackupVaultEvents(v []*string) *GetBackupVaultNotificationsOutput { - s.BackupVaultEvents = v +// SetByAccountId sets the ByAccountId field's value. +func (s *ListBackupJobsInput) SetByAccountId(v string) *ListBackupJobsInput { + s.ByAccountId = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *GetBackupVaultNotificationsOutput) SetBackupVaultName(v string) *GetBackupVaultNotificationsOutput { - s.BackupVaultName = &v +// SetByBackupVaultName sets the ByBackupVaultName field's value. +func (s *ListBackupJobsInput) SetByBackupVaultName(v string) *ListBackupJobsInput { + s.ByBackupVaultName = &v return s } -// SetSNSTopicArn sets the SNSTopicArn field's value. -func (s *GetBackupVaultNotificationsOutput) SetSNSTopicArn(v string) *GetBackupVaultNotificationsOutput { - s.SNSTopicArn = &v +// SetByCompleteAfter sets the ByCompleteAfter field's value. +func (s *ListBackupJobsInput) SetByCompleteAfter(v time.Time) *ListBackupJobsInput { + s.ByCompleteAfter = &v return s } -type GetLegalHoldInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // This is the ID required to use GetLegalHold. This unique ID is associated - // with a specific legal hold. - // - // LegalHoldId is a required field - LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` +// SetByCompleteBefore sets the ByCompleteBefore field's value. +func (s *ListBackupJobsInput) SetByCompleteBefore(v time.Time) *ListBackupJobsInput { + s.ByCompleteBefore = &v + return s } -// 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 GetLegalHoldInput) String() string { - return awsutil.Prettify(s) +// SetByCreatedAfter sets the ByCreatedAfter field's value. +func (s *ListBackupJobsInput) SetByCreatedAfter(v time.Time) *ListBackupJobsInput { + s.ByCreatedAfter = &v + return 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 GetLegalHoldInput) GoString() string { - return s.String() +// SetByCreatedBefore sets the ByCreatedBefore field's value. +func (s *ListBackupJobsInput) SetByCreatedBefore(v time.Time) *ListBackupJobsInput { + s.ByCreatedBefore = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetLegalHoldInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLegalHoldInput"} - if s.LegalHoldId == nil { - invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) - } - if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetByMessageCategory sets the ByMessageCategory field's value. +func (s *ListBackupJobsInput) SetByMessageCategory(v string) *ListBackupJobsInput { + s.ByMessageCategory = &v + return s } -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *GetLegalHoldInput) SetLegalHoldId(v string) *GetLegalHoldInput { - s.LegalHoldId = &v +// SetByParentJobId sets the ByParentJobId field's value. +func (s *ListBackupJobsInput) SetByParentJobId(v string) *ListBackupJobsInput { + s.ByParentJobId = &v return s } -type GetLegalHoldOutput struct { - _ struct{} `type:"structure"` - - // String describing the reason for removing the legal hold. - CancelDescription *string `type:"string"` - - // Time in number when legal hold was cancelled. - CancellationDate *time.Time `type:"timestamp"` - - // Time in number format when legal hold was created. - CreationDate *time.Time `type:"timestamp"` +// SetByResourceArn sets the ByResourceArn field's value. +func (s *ListBackupJobsInput) SetByResourceArn(v string) *ListBackupJobsInput { + s.ByResourceArn = &v + return s +} - // This is the returned string description of the legal hold. - Description *string `type:"string"` +// SetByResourceType sets the ByResourceType field's value. +func (s *ListBackupJobsInput) SetByResourceType(v string) *ListBackupJobsInput { + s.ByResourceType = &v + return s +} - // This is the returned framework ARN for the specified legal hold. An Amazon - // Resource Name (ARN) uniquely identifies a resource. The format of the ARN - // depends on the resource type. - LegalHoldArn *string `type:"string"` +// SetByState sets the ByState field's value. +func (s *ListBackupJobsInput) SetByState(v string) *ListBackupJobsInput { + s.ByState = &v + return s +} - // This is the returned ID associated with a specified legal hold. - LegalHoldId *string `type:"string"` +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupJobsInput) SetMaxResults(v int64) *ListBackupJobsInput { + s.MaxResults = &v + return s +} - // This specifies criteria to assign a set of resources, such as resource types - // or backup vaults. - RecoveryPointSelection *RecoveryPointSelection `type:"structure"` +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobsInput) SetNextToken(v string) *ListBackupJobsInput { + s.NextToken = &v + return s +} - // This is the date and time until which the legal hold record will be retained. - RetainRecordUntil *time.Time `type:"timestamp"` +type ListBackupJobsOutput struct { + _ struct{} `type:"structure"` - // This is the status of the legal hold. Statuses can be ACTIVE, CREATING, CANCELED, - // and CANCELING. - Status *string `type:"string" enum:"LegalHoldStatus"` + // An array of structures containing metadata about your backup jobs returned + // in JSON format. + BackupJobs []*Job `type:"list"` - // This is the string title of the legal hold. - Title *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } // String returns the string representation. @@ -14542,7 +18493,7 @@ type GetLegalHoldOutput 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 GetLegalHoldOutput) String() string { +func (s ListBackupJobsOutput) String() string { return awsutil.Prettify(s) } @@ -14551,89 +18502,33 @@ func (s GetLegalHoldOutput) 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 GetLegalHoldOutput) GoString() string { +func (s ListBackupJobsOutput) GoString() string { return s.String() } -// SetCancelDescription sets the CancelDescription field's value. -func (s *GetLegalHoldOutput) SetCancelDescription(v string) *GetLegalHoldOutput { - s.CancelDescription = &v - return s -} - -// SetCancellationDate sets the CancellationDate field's value. -func (s *GetLegalHoldOutput) SetCancellationDate(v time.Time) *GetLegalHoldOutput { - s.CancellationDate = &v - return s -} - -// SetCreationDate sets the CreationDate field's value. -func (s *GetLegalHoldOutput) SetCreationDate(v time.Time) *GetLegalHoldOutput { - s.CreationDate = &v - return s -} - -// SetDescription sets the Description field's value. -func (s *GetLegalHoldOutput) SetDescription(v string) *GetLegalHoldOutput { - s.Description = &v - return s -} - -// SetLegalHoldArn sets the LegalHoldArn field's value. -func (s *GetLegalHoldOutput) SetLegalHoldArn(v string) *GetLegalHoldOutput { - s.LegalHoldArn = &v - return s -} - -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *GetLegalHoldOutput) SetLegalHoldId(v string) *GetLegalHoldOutput { - s.LegalHoldId = &v - return s -} - -// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. -func (s *GetLegalHoldOutput) SetRecoveryPointSelection(v *RecoveryPointSelection) *GetLegalHoldOutput { - s.RecoveryPointSelection = v - return s -} - -// SetRetainRecordUntil sets the RetainRecordUntil field's value. -func (s *GetLegalHoldOutput) SetRetainRecordUntil(v time.Time) *GetLegalHoldOutput { - s.RetainRecordUntil = &v - return s -} - -// SetStatus sets the Status field's value. -func (s *GetLegalHoldOutput) SetStatus(v string) *GetLegalHoldOutput { - s.Status = &v +// SetBackupJobs sets the BackupJobs field's value. +func (s *ListBackupJobsOutput) SetBackupJobs(v []*Job) *ListBackupJobsOutput { + s.BackupJobs = v return s } -// SetTitle sets the Title field's value. -func (s *GetLegalHoldOutput) SetTitle(v string) *GetLegalHoldOutput { - s.Title = &v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupJobsOutput) SetNextToken(v string) *ListBackupJobsOutput { + s.NextToken = &v return s } -type GetRecoveryPointRestoreMetadataInput struct { +type ListBackupPlanTemplatesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // This is the account ID of the specified backup vault. - BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - // - // RecoveryPointArn is a required field - RecoveryPointArn *string `location:"uri" locationName:"recoveryPointArn" type:"string" required:"true"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -14641,7 +18536,7 @@ type GetRecoveryPointRestoreMetadataInput 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 GetRecoveryPointRestoreMetadataInput) String() string { +func (s ListBackupPlanTemplatesInput) String() string { return awsutil.Prettify(s) } @@ -14650,24 +18545,15 @@ func (s GetRecoveryPointRestoreMetadataInput) 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 GetRecoveryPointRestoreMetadataInput) GoString() string { +func (s ListBackupPlanTemplatesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetRecoveryPointRestoreMetadataInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetRecoveryPointRestoreMetadataInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.RecoveryPointArn == nil { - invalidParams.Add(request.NewErrParamRequired("RecoveryPointArn")) - } - if s.RecoveryPointArn != nil && len(*s.RecoveryPointArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("RecoveryPointArn", 1)) +func (s *ListBackupPlanTemplatesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupPlanTemplatesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -14676,41 +18562,29 @@ func (s *GetRecoveryPointRestoreMetadataInput) Validate() error { return nil } -// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. -func (s *GetRecoveryPointRestoreMetadataInput) SetBackupVaultAccountId(v string) *GetRecoveryPointRestoreMetadataInput { - s.BackupVaultAccountId = &v - return s -} - -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *GetRecoveryPointRestoreMetadataInput) SetBackupVaultName(v string) *GetRecoveryPointRestoreMetadataInput { - s.BackupVaultName = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupPlanTemplatesInput) SetMaxResults(v int64) *ListBackupPlanTemplatesInput { + s.MaxResults = &v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *GetRecoveryPointRestoreMetadataInput) SetRecoveryPointArn(v string) *GetRecoveryPointRestoreMetadataInput { - s.RecoveryPointArn = &v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlanTemplatesInput) SetNextToken(v string) *ListBackupPlanTemplatesInput { + s.NextToken = &v return s } -type GetRecoveryPointRestoreMetadataOutput struct { +type ListBackupPlanTemplatesOutput struct { _ struct{} `type:"structure"` - // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` + // An array of template list items containing metadata about your saved templates. + BackupPlanTemplatesList []*PlanTemplatesListMember `type:"list"` - // The set of metadata key-value pairs that describe the original configuration - // of the backed-up resource. These values vary depending on the service that - // is being restored. - // - // RestoreMetadata is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by GetRecoveryPointRestoreMetadataOutput's - // String and GoString methods. - RestoreMetadata map[string]*string `type:"map" sensitive:"true"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } // String returns the string representation. @@ -14718,7 +18592,7 @@ type GetRecoveryPointRestoreMetadataOutput 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 GetRecoveryPointRestoreMetadataOutput) String() string { +func (s ListBackupPlanTemplatesOutput) String() string { return awsutil.Prettify(s) } @@ -14727,30 +18601,38 @@ func (s GetRecoveryPointRestoreMetadataOutput) 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 GetRecoveryPointRestoreMetadataOutput) GoString() string { +func (s ListBackupPlanTemplatesOutput) GoString() string { return s.String() } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *GetRecoveryPointRestoreMetadataOutput) SetBackupVaultArn(v string) *GetRecoveryPointRestoreMetadataOutput { - s.BackupVaultArn = &v - return s -} - -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *GetRecoveryPointRestoreMetadataOutput) SetRecoveryPointArn(v string) *GetRecoveryPointRestoreMetadataOutput { - s.RecoveryPointArn = &v +// SetBackupPlanTemplatesList sets the BackupPlanTemplatesList field's value. +func (s *ListBackupPlanTemplatesOutput) SetBackupPlanTemplatesList(v []*PlanTemplatesListMember) *ListBackupPlanTemplatesOutput { + s.BackupPlanTemplatesList = v return s } -// SetRestoreMetadata sets the RestoreMetadata field's value. -func (s *GetRecoveryPointRestoreMetadataOutput) SetRestoreMetadata(v map[string]*string) *GetRecoveryPointRestoreMetadataOutput { - s.RestoreMetadata = v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlanTemplatesOutput) SetNextToken(v string) *ListBackupPlanTemplatesOutput { + s.NextToken = &v return s } -type GetSupportedResourceTypesInput struct { +type ListBackupPlanVersionsInput struct { _ struct{} `type:"structure" nopayload:"true"` + + // Uniquely identifies a backup plan. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -14758,7 +18640,7 @@ type GetSupportedResourceTypesInput 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 GetSupportedResourceTypesInput) String() string { +func (s ListBackupPlanVersionsInput) String() string { return awsutil.Prettify(s) } @@ -14767,74 +18649,58 @@ func (s GetSupportedResourceTypesInput) 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 GetSupportedResourceTypesInput) GoString() string { +func (s ListBackupPlanVersionsInput) GoString() string { return s.String() } -type GetSupportedResourceTypesOutput struct { - _ struct{} `type:"structure"` +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupPlanVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupPlanVersionsInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) + } + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } - // Contains a string with the supported Amazon Web Services resource types: - // - // * Aurora for Amazon Aurora - // - // * DynamoDB for Amazon DynamoDB - // - // * EBS for Amazon Elastic Block Store - // - // * EC2 for Amazon Elastic Compute Cloud - // - // * EFS for Amazon Elastic File System - // - // * FSX for Amazon FSx - // - // * RDS for Amazon Relational Database Service - // - // * Storage Gateway for Storage Gateway - // - // * DocDB for Amazon DocumentDB (with MongoDB compatibility) - // - // * Neptune for Amazon Neptune - ResourceTypes []*string `type:"list"` + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// 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 GetSupportedResourceTypesOutput) String() string { - return awsutil.Prettify(s) +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *ListBackupPlanVersionsInput) SetBackupPlanId(v string) *ListBackupPlanVersionsInput { + s.BackupPlanId = &v + return 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 GetSupportedResourceTypesOutput) GoString() string { - return s.String() +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupPlanVersionsInput) SetMaxResults(v int64) *ListBackupPlanVersionsInput { + s.MaxResults = &v + return s } -// SetResourceTypes sets the ResourceTypes field's value. -func (s *GetSupportedResourceTypesOutput) SetResourceTypes(v []*string) *GetSupportedResourceTypesOutput { - s.ResourceTypes = v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlanVersionsInput) SetNextToken(v string) *ListBackupPlanVersionsInput { + s.NextToken = &v return s } -// Indicates that something is wrong with a parameter's value. For example, -// the value is out of range. -type InvalidParameterValueException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Code_ *string `locationName:"Code" type:"string"` - - Context *string `type:"string"` +type ListBackupPlanVersionsOutput struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"Message" type:"string"` + // An array of version list items containing metadata about your backup plans. + BackupPlanVersionsList []*PlansListMember `type:"list"` - Type *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } // String returns the string representation. @@ -14842,7 +18708,7 @@ type InvalidParameterValueException 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 InvalidParameterValueException) String() string { +func (s ListBackupPlanVersionsOutput) String() string { return awsutil.Prettify(s) } @@ -14851,61 +18717,37 @@ func (s InvalidParameterValueException) 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 InvalidParameterValueException) GoString() string { +func (s ListBackupPlanVersionsOutput) GoString() string { return s.String() } -func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { - return &InvalidParameterValueException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *InvalidParameterValueException) Code() string { - return "InvalidParameterValueException" -} - -// Message returns the exception's message. -func (s *InvalidParameterValueException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidParameterValueException) OrigErr() error { - return nil -} - -func (s *InvalidParameterValueException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidParameterValueException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetBackupPlanVersionsList sets the BackupPlanVersionsList field's value. +func (s *ListBackupPlanVersionsOutput) SetBackupPlanVersionsList(v []*PlansListMember) *ListBackupPlanVersionsOutput { + s.BackupPlanVersionsList = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InvalidParameterValueException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlanVersionsOutput) SetNextToken(v string) *ListBackupPlanVersionsOutput { + s.NextToken = &v + return s } -// Indicates that something is wrong with the input to the request. For example, -// a parameter is of the wrong type. -type InvalidRequestException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Code_ *string `locationName:"Code" type:"string"` +type ListBackupPlansInput struct { + _ struct{} `type:"structure" nopayload:"true"` - Context *string `type:"string"` + // A Boolean value with a default value of FALSE that returns deleted backup + // plans when set to TRUE. + IncludeDeleted *bool `location:"querystring" locationName:"includeDeleted" type:"boolean"` - Message_ *string `locationName:"Message" type:"string"` + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - Type *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -14913,7 +18755,7 @@ type InvalidRequestException 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 InvalidRequestException) String() string { +func (s ListBackupPlansInput) String() string { return awsutil.Prettify(s) } @@ -14922,61 +18764,101 @@ func (s InvalidRequestException) 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 InvalidRequestException) GoString() string { +func (s ListBackupPlansInput) GoString() string { return s.String() } -func newErrorInvalidRequestException(v protocol.ResponseMetadata) error { - return &InvalidRequestException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupPlansInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupPlansInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams } + return nil } -// Code returns the exception type name. -func (s *InvalidRequestException) Code() string { - return "InvalidRequestException" +// SetIncludeDeleted sets the IncludeDeleted field's value. +func (s *ListBackupPlansInput) SetIncludeDeleted(v bool) *ListBackupPlansInput { + s.IncludeDeleted = &v + return s } -// Message returns the exception's message. -func (s *InvalidRequestException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupPlansInput) SetMaxResults(v int64) *ListBackupPlansInput { + s.MaxResults = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidRequestException) OrigErr() error { - return nil +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlansInput) SetNextToken(v string) *ListBackupPlansInput { + s.NextToken = &v + return s } -func (s *InvalidRequestException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +type ListBackupPlansOutput struct { + _ struct{} `type:"structure"` + + // An array of backup plan list items containing metadata about your saved backup + // plans. + BackupPlansList []*PlansListMember `type:"list"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidRequestException) StatusCode() int { - return s.RespMetadata.StatusCode +// 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 ListBackupPlansOutput) String() string { + return awsutil.Prettify(s) } -// RequestID returns the service's response RequestID for request. -func (s *InvalidRequestException) RequestID() string { - return s.RespMetadata.RequestID +// 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 ListBackupPlansOutput) GoString() string { + return s.String() } -// Backup is already performing an action on this recovery point. It can't perform -// the action you requested until the first action finishes. Try again later. -type InvalidResourceStateException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetBackupPlansList sets the BackupPlansList field's value. +func (s *ListBackupPlansOutput) SetBackupPlansList(v []*PlansListMember) *ListBackupPlansOutput { + s.BackupPlansList = v + return s +} - Code_ *string `locationName:"Code" type:"string"` +// SetNextToken sets the NextToken field's value. +func (s *ListBackupPlansOutput) SetNextToken(v string) *ListBackupPlansOutput { + s.NextToken = &v + return s +} - Context *string `type:"string"` +type ListBackupSelectionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - Message_ *string `locationName:"Message" type:"string"` + // Uniquely identifies a backup plan. + // + // BackupPlanId is a required field + BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` - Type *string `type:"string"` + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -14984,7 +18866,7 @@ type InvalidResourceStateException 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 InvalidResourceStateException) String() string { +func (s ListBackupSelectionsInput) String() string { return awsutil.Prettify(s) } @@ -14993,170 +18875,108 @@ func (s InvalidResourceStateException) 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 InvalidResourceStateException) GoString() string { +func (s ListBackupSelectionsInput) GoString() string { return s.String() } -func newErrorInvalidResourceStateException(v protocol.ResponseMetadata) error { - return &InvalidResourceStateException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupSelectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupSelectionsInput"} + if s.BackupPlanId == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) } -} - -// Code returns the exception type name. -func (s *InvalidResourceStateException) Code() string { - return "InvalidResourceStateException" -} - -// Message returns the exception's message. -func (s *InvalidResourceStateException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidResourceStateException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } return nil } -func (s *InvalidResourceStateException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *ListBackupSelectionsInput) SetBackupPlanId(v string) *ListBackupSelectionsInput { + s.BackupPlanId = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidResourceStateException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupSelectionsInput) SetMaxResults(v int64) *ListBackupSelectionsInput { + s.MaxResults = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InvalidResourceStateException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListBackupSelectionsInput) SetNextToken(v string) *ListBackupSelectionsInput { + s.NextToken = &v + return s } -// Contains detailed information about a backup job. -type Job struct { +type ListBackupSelectionsOutput struct { _ struct{} `type:"structure"` - // The account ID that owns the backup job. - AccountId *string `type:"string"` - - // Uniquely identifies a request to Backup to back up a resource. - BackupJobId *string `type:"string"` - - // Specifies the backup option for a selected resource. This option is only - // available for Windows Volume Shadow Copy Service (VSS) backup jobs. - // - // Valid values: Set to "WindowsVSS":"enabled" to enable the WindowsVSS backup - // option and create a Windows VSS backup. Set to "WindowsVSS":"disabled" to - // create a regular backup. If you specify an invalid option, you get an InvalidParameterValueException - // exception. - BackupOptions map[string]*string `type:"map"` - - // The size, in bytes, of a backup. - BackupSizeInBytes *int64 `type:"long"` - - // Represents the type of backup for a backup job. - BackupType *string `type:"string"` - - // An Amazon Resource Name (ARN) that uniquely identifies a backup vault; for - // example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - BackupVaultName *string `type:"string"` - - // The size in bytes transferred to a backup vault at the time that the job - // status was queried. - BytesTransferred *int64 `type:"long"` - - // The date and time a job to create a backup job is completed, in Unix format - // and Coordinated Universal Time (UTC). The value of CompletionDate is accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // Contains identifying information about the creation of a backup job, including - // the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId of the - // backup plan used to create it. - CreatedBy *RecoveryPointCreator `type:"structure"` - - // The date and time a backup job is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // The date and time a job to back up resources is expected to be completed, - // in Unix format and Coordinated Universal Time (UTC). The value of ExpectedCompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - ExpectedCompletionDate *time.Time `type:"timestamp"` - - // Specifies the IAM role ARN used to create the target recovery point. IAM - // roles other than the default role must include either AWSBackup or AwsBackup - // in the role name. For example, arn:aws:iam::123456789012:role/AWSBackupRDSAccess. - // Role names without those strings lack permissions to perform backup jobs. - IamRoleArn *string `type:"string"` - - // This is a boolean value indicating this is a parent (composite) backup job. - IsParent *bool `type:"boolean"` + // An array of backup selection list items containing metadata about each resource + // in the list. + BackupSelectionsList []*SelectionsListMember `type:"list"` - // This parameter is the job count for the specified message category. - // - // Example strings include AccessDenied, Success, and InvalidParameters. See - // Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. - // - // The the value ANY returns count of all message categories. - // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - MessageCategory *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` +} - // This uniquely identifies a request to Backup to back up a resource. The return - // will be the parent (composite) job ID. - ParentJobId *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 ListBackupSelectionsOutput) String() string { + return awsutil.Prettify(s) +} - // Contains an estimated percentage complete of a job at the time the job status - // was queried. - PercentDone *string `type:"string"` +// 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 ListBackupSelectionsOutput) GoString() string { + return s.String() +} - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` +// SetBackupSelectionsList sets the BackupSelectionsList field's value. +func (s *ListBackupSelectionsOutput) SetBackupSelectionsList(v []*SelectionsListMember) *ListBackupSelectionsOutput { + s.BackupSelectionsList = v + return s +} - // An ARN that uniquely identifies a resource. The format of the ARN depends - // on the resource type. - ResourceArn *string `type:"string"` +// SetNextToken sets the NextToken field's value. +func (s *ListBackupSelectionsOutput) SetNextToken(v string) *ListBackupSelectionsOutput { + s.NextToken = &v + return s +} - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` +type ListBackupVaultsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // The type of Amazon Web Services resource to be backed up; for example, an - // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) - // backups, the only supported resource type is Amazon EC2. - ResourceType *string `type:"string"` + // This parameter will sort the list of vaults by shared vaults. + ByShared *bool `location:"querystring" locationName:"shared" type:"boolean"` - // Specifies the time in Unix format and Coordinated Universal Time (UTC) when - // a backup job must be started before it is canceled. The value is calculated - // by adding the start window to the scheduled time. So if the scheduled time - // were 6:00 PM and the start window is 2 hours, the StartBy time would be 8:00 - // PM on the date specified. The value of StartBy is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - StartBy *time.Time `type:"timestamp"` + // This parameter will sort the list of vaults by vault type. + ByVaultType *string `location:"querystring" locationName:"vaultType" type:"string" enum:"VaultType"` - // The current state of a backup job. - State *string `type:"string" enum:"JobState"` + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // A detailed message explaining the status of the job to back up a resource. - StatusMessage *string `type:"string"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -15164,7 +18984,7 @@ type Job 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 Job) String() string { +func (s ListBackupVaultsInput) String() string { return awsutil.Prettify(s) } @@ -15173,186 +18993,377 @@ func (s Job) 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 Job) GoString() string { +func (s ListBackupVaultsInput) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *Job) SetAccountId(v string) *Job { - s.AccountId = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBackupVaultsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBackupVaultsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetBackupJobId sets the BackupJobId field's value. -func (s *Job) SetBackupJobId(v string) *Job { - s.BackupJobId = &v +// SetByShared sets the ByShared field's value. +func (s *ListBackupVaultsInput) SetByShared(v bool) *ListBackupVaultsInput { + s.ByShared = &v return s } -// SetBackupOptions sets the BackupOptions field's value. -func (s *Job) SetBackupOptions(v map[string]*string) *Job { - s.BackupOptions = v +// SetByVaultType sets the ByVaultType field's value. +func (s *ListBackupVaultsInput) SetByVaultType(v string) *ListBackupVaultsInput { + s.ByVaultType = &v return s } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *Job) SetBackupSizeInBytes(v int64) *Job { - s.BackupSizeInBytes = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListBackupVaultsInput) SetMaxResults(v int64) *ListBackupVaultsInput { + s.MaxResults = &v return s } -// SetBackupType sets the BackupType field's value. -func (s *Job) SetBackupType(v string) *Job { - s.BackupType = &v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupVaultsInput) SetNextToken(v string) *ListBackupVaultsInput { + s.NextToken = &v return s } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *Job) SetBackupVaultArn(v string) *Job { - s.BackupVaultArn = &v - return s +type ListBackupVaultsOutput struct { + _ struct{} `type:"structure"` + + // An array of backup vault list members containing vault metadata, including + // Amazon Resource Name (ARN), display name, creation date, number of saved + // recovery points, and encryption information if the resources saved in the + // backup vault are encrypted. + BackupVaultList []*VaultListMember `type:"list"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *Job) SetBackupVaultName(v string) *Job { - s.BackupVaultName = &v - return s +// 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 ListBackupVaultsOutput) String() string { + return awsutil.Prettify(s) } -// SetBytesTransferred sets the BytesTransferred field's value. -func (s *Job) SetBytesTransferred(v int64) *Job { - s.BytesTransferred = &v - return 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 ListBackupVaultsOutput) GoString() string { + return s.String() } -// SetCompletionDate sets the CompletionDate field's value. -func (s *Job) SetCompletionDate(v time.Time) *Job { - s.CompletionDate = &v +// SetBackupVaultList sets the BackupVaultList field's value. +func (s *ListBackupVaultsOutput) SetBackupVaultList(v []*VaultListMember) *ListBackupVaultsOutput { + s.BackupVaultList = v return s } -// SetCreatedBy sets the CreatedBy field's value. -func (s *Job) SetCreatedBy(v *RecoveryPointCreator) *Job { - s.CreatedBy = v +// SetNextToken sets the NextToken field's value. +func (s *ListBackupVaultsOutput) SetNextToken(v string) *ListBackupVaultsOutput { + s.NextToken = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *Job) SetCreationDate(v time.Time) *Job { - s.CreationDate = &v - return s +type ListCopyJobSummariesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Returns the job count for the specified account. + // + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. + // + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. + // + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` + + // This parameter sets the maximum number of items to be returned. + // + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // This parameter returns the job count for the specified message category. + // + // Example accepted strings include AccessDenied, Success, and InvalidParameters. + // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted MessageCategory strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. + // + // The the value ANY returns count of all resource types. + // + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. + // + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. + // + // The the value ANY returns count of all states. + // + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"CopyJobStatus"` +} + +// 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 ListCopyJobSummariesInput) 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 ListCopyJobSummariesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCopyJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCopyJobSummariesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetExpectedCompletionDate sets the ExpectedCompletionDate field's value. -func (s *Job) SetExpectedCompletionDate(v time.Time) *Job { - s.ExpectedCompletionDate = &v +// SetAccountId sets the AccountId field's value. +func (s *ListCopyJobSummariesInput) SetAccountId(v string) *ListCopyJobSummariesInput { + s.AccountId = &v return s } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *Job) SetIamRoleArn(v string) *Job { - s.IamRoleArn = &v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListCopyJobSummariesInput) SetAggregationPeriod(v string) *ListCopyJobSummariesInput { + s.AggregationPeriod = &v return s } -// SetIsParent sets the IsParent field's value. -func (s *Job) SetIsParent(v bool) *Job { - s.IsParent = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListCopyJobSummariesInput) SetMaxResults(v int64) *ListCopyJobSummariesInput { + s.MaxResults = &v return s } // SetMessageCategory sets the MessageCategory field's value. -func (s *Job) SetMessageCategory(v string) *Job { +func (s *ListCopyJobSummariesInput) SetMessageCategory(v string) *ListCopyJobSummariesInput { s.MessageCategory = &v return s } -// SetParentJobId sets the ParentJobId field's value. -func (s *Job) SetParentJobId(v string) *Job { - s.ParentJobId = &v +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobSummariesInput) SetNextToken(v string) *ListCopyJobSummariesInput { + s.NextToken = &v return s } -// SetPercentDone sets the PercentDone field's value. -func (s *Job) SetPercentDone(v string) *Job { - s.PercentDone = &v +// SetResourceType sets the ResourceType field's value. +func (s *ListCopyJobSummariesInput) SetResourceType(v string) *ListCopyJobSummariesInput { + s.ResourceType = &v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *Job) SetRecoveryPointArn(v string) *Job { - s.RecoveryPointArn = &v +// SetState sets the State field's value. +func (s *ListCopyJobSummariesInput) SetState(v string) *ListCopyJobSummariesInput { + s.State = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *Job) SetResourceArn(v string) *Job { - s.ResourceArn = &v - return s +type ListCopyJobSummariesOutput struct { + _ struct{} `type:"structure"` + + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` + + // This return shows a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + CopyJobSummaries []*CopyJobSummary `type:"list"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `type:"string"` } -// SetResourceName sets the ResourceName field's value. -func (s *Job) SetResourceName(v string) *Job { - s.ResourceName = &v - return s +// 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 ListCopyJobSummariesOutput) String() string { + return awsutil.Prettify(s) } -// SetResourceType sets the ResourceType field's value. -func (s *Job) SetResourceType(v string) *Job { - s.ResourceType = &v - return 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 ListCopyJobSummariesOutput) GoString() string { + return s.String() } -// SetStartBy sets the StartBy field's value. -func (s *Job) SetStartBy(v time.Time) *Job { - s.StartBy = &v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListCopyJobSummariesOutput) SetAggregationPeriod(v string) *ListCopyJobSummariesOutput { + s.AggregationPeriod = &v return s } -// SetState sets the State field's value. -func (s *Job) SetState(v string) *Job { - s.State = &v +// SetCopyJobSummaries sets the CopyJobSummaries field's value. +func (s *ListCopyJobSummariesOutput) SetCopyJobSummaries(v []*CopyJobSummary) *ListCopyJobSummariesOutput { + s.CopyJobSummaries = v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *Job) SetStatusMessage(v string) *Job { - s.StatusMessage = &v +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobSummariesOutput) SetNextToken(v string) *ListCopyJobSummariesOutput { + s.NextToken = &v return s } -// A legal hold is an administrative tool that helps prevent backups from being -// deleted while under a hold. While the hold is in place, backups under a hold -// cannot be deleted and lifecycle policies that would alter the backup status -// (such as transition to cold storage) are delayed until the legal hold is -// removed. A backup can have more than one legal hold. Legal holds are applied -// to one or more backups (also known as recovery points). These backups can -// be filtered by resource types and by resource IDs. -type LegalHold struct { - _ struct{} `type:"structure"` +type ListCopyJobsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // This is the time in number format when legal hold was cancelled. - CancellationDate *time.Time `type:"timestamp"` + // The account ID to list the jobs from. Returns only copy jobs associated with + // the specified account ID. + ByAccountId *string `location:"querystring" locationName:"accountId" type:"string"` - // This is the time in number format when legal hold was created. - CreationDate *time.Time `type:"timestamp"` + // Returns only copy jobs completed after a date expressed in Unix format and + // Coordinated Universal Time (UTC). + ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` - // This is the description of a legal hold. - Description *string `type:"string"` + // Returns only copy jobs completed before a date expressed in Unix format and + // Coordinated Universal Time (UTC). + ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` - // This is an Amazon Resource Number (ARN) that uniquely identifies the legal - // hold; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - LegalHoldArn *string `type:"string"` + // Returns only copy jobs that were created after the specified date. + ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` - // ID of specific legal hold on one or more recovery points. - LegalHoldId *string `type:"string"` + // Returns only copy jobs that were created before the specified date. + ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` - // This is the status of the legal hold. Statuses can be ACTIVE, CREATING, CANCELED, - // and CANCELING. - Status *string `type:"string" enum:"LegalHoldStatus"` + // An Amazon Resource Name (ARN) that uniquely identifies a source backup vault + // to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + ByDestinationVaultArn *string `location:"querystring" locationName:"destinationVaultArn" type:"string"` - // This is the title of a legal hold. - Title *string `type:"string"` + // This is an optional parameter that can be used to filter out jobs with a + // MessageCategory which matches the value you input. + // + // Example strings may include AccessDenied, SUCCESS, AGGREGATE_ALL, and INVALIDPARAMETERS. + // + // View Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) + // for a list of accepted strings. + // + // The the value ANY returns count of all message categories. + // + // AGGREGATE_ALL aggregates job counts for all message categories and returns + // the sum. + ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` + + // This is a filter to list child (nested) jobs based on parent job ID. + ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` + + // Returns only copy jobs that match the specified resource Amazon Resource + // Name (ARN). + ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` + + // Returns only backup jobs for the specified resources: + // + // * Aurora for Amazon Aurora + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * RDS for Amazon Relational Database Service + // + // * Storage Gateway for Storage Gateway + // + // * S3 for Amazon S3 + // + // * VirtualMachine for virtual machines + ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` + + // Returns only copy jobs that are in the specified state. + ByState *string `location:"querystring" locationName:"state" type:"string" enum:"CopyJobState"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -15360,84 +19371,122 @@ type LegalHold 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 LegalHold) String() string { +func (s ListCopyJobsInput) 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 LegalHold) GoString() string { - return s.String() +// 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 ListCopyJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListCopyJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListCopyJobsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetByAccountId sets the ByAccountId field's value. +func (s *ListCopyJobsInput) SetByAccountId(v string) *ListCopyJobsInput { + s.ByAccountId = &v + return s +} + +// SetByCompleteAfter sets the ByCompleteAfter field's value. +func (s *ListCopyJobsInput) SetByCompleteAfter(v time.Time) *ListCopyJobsInput { + s.ByCompleteAfter = &v + return s +} + +// SetByCompleteBefore sets the ByCompleteBefore field's value. +func (s *ListCopyJobsInput) SetByCompleteBefore(v time.Time) *ListCopyJobsInput { + s.ByCompleteBefore = &v + return s +} + +// SetByCreatedAfter sets the ByCreatedAfter field's value. +func (s *ListCopyJobsInput) SetByCreatedAfter(v time.Time) *ListCopyJobsInput { + s.ByCreatedAfter = &v + return s +} + +// SetByCreatedBefore sets the ByCreatedBefore field's value. +func (s *ListCopyJobsInput) SetByCreatedBefore(v time.Time) *ListCopyJobsInput { + s.ByCreatedBefore = &v + return s +} + +// SetByDestinationVaultArn sets the ByDestinationVaultArn field's value. +func (s *ListCopyJobsInput) SetByDestinationVaultArn(v string) *ListCopyJobsInput { + s.ByDestinationVaultArn = &v + return s } -// SetCancellationDate sets the CancellationDate field's value. -func (s *LegalHold) SetCancellationDate(v time.Time) *LegalHold { - s.CancellationDate = &v +// SetByMessageCategory sets the ByMessageCategory field's value. +func (s *ListCopyJobsInput) SetByMessageCategory(v string) *ListCopyJobsInput { + s.ByMessageCategory = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *LegalHold) SetCreationDate(v time.Time) *LegalHold { - s.CreationDate = &v +// SetByParentJobId sets the ByParentJobId field's value. +func (s *ListCopyJobsInput) SetByParentJobId(v string) *ListCopyJobsInput { + s.ByParentJobId = &v return s } -// SetDescription sets the Description field's value. -func (s *LegalHold) SetDescription(v string) *LegalHold { - s.Description = &v +// SetByResourceArn sets the ByResourceArn field's value. +func (s *ListCopyJobsInput) SetByResourceArn(v string) *ListCopyJobsInput { + s.ByResourceArn = &v return s } -// SetLegalHoldArn sets the LegalHoldArn field's value. -func (s *LegalHold) SetLegalHoldArn(v string) *LegalHold { - s.LegalHoldArn = &v +// SetByResourceType sets the ByResourceType field's value. +func (s *ListCopyJobsInput) SetByResourceType(v string) *ListCopyJobsInput { + s.ByResourceType = &v return s } -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *LegalHold) SetLegalHoldId(v string) *LegalHold { - s.LegalHoldId = &v +// SetByState sets the ByState field's value. +func (s *ListCopyJobsInput) SetByState(v string) *ListCopyJobsInput { + s.ByState = &v return s } -// SetStatus sets the Status field's value. -func (s *LegalHold) SetStatus(v string) *LegalHold { - s.Status = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListCopyJobsInput) SetMaxResults(v int64) *ListCopyJobsInput { + s.MaxResults = &v return s } -// SetTitle sets the Title field's value. -func (s *LegalHold) SetTitle(v string) *LegalHold { - s.Title = &v +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobsInput) SetNextToken(v string) *ListCopyJobsInput { + s.NextToken = &v return s } -// Contains an array of Transition objects specifying how long in days before -// a recovery point transitions to cold storage or is deleted. -// -// Backups transitioned to cold storage must be stored in cold storage for a -// minimum of 90 days. Therefore, on the console, the “retention” setting -// must be 90 days greater than the “transition to cold after days” setting. -// The “transition to cold after days” setting cannot be changed after a -// backup has been transitioned to cold. -// -// Resource types that are able to be transitioned to cold storage are listed -// in the "Lifecycle to cold storage" section of the Feature availability by -// resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) -// table. Backup ignores this expression for other resource types. -type Lifecycle struct { +type ListCopyJobsOutput struct { _ struct{} `type:"structure"` - // Specifies the number of days after creation that a recovery point is deleted. - // Must be greater than 90 days plus MoveToColdStorageAfterDays. - DeleteAfterDays *int64 `type:"long"` + // An array of structures containing metadata about your copy jobs returned + // in JSON format. + CopyJobs []*CopyJob `type:"list"` - // Specifies the number of days after creation that a recovery point is moved - // to cold storage. - MoveToColdStorageAfterDays *int64 `type:"long"` + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. + NextToken *string `type:"string"` } // String returns the string representation. @@ -15445,7 +19494,7 @@ type Lifecycle 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 Lifecycle) String() string { +func (s ListCopyJobsOutput) String() string { return awsutil.Prettify(s) } @@ -15454,35 +19503,32 @@ func (s Lifecycle) 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 Lifecycle) GoString() string { +func (s ListCopyJobsOutput) GoString() string { return s.String() } -// SetDeleteAfterDays sets the DeleteAfterDays field's value. -func (s *Lifecycle) SetDeleteAfterDays(v int64) *Lifecycle { - s.DeleteAfterDays = &v +// SetCopyJobs sets the CopyJobs field's value. +func (s *ListCopyJobsOutput) SetCopyJobs(v []*CopyJob) *ListCopyJobsOutput { + s.CopyJobs = v return s } -// SetMoveToColdStorageAfterDays sets the MoveToColdStorageAfterDays field's value. -func (s *Lifecycle) SetMoveToColdStorageAfterDays(v int64) *Lifecycle { - s.MoveToColdStorageAfterDays = &v +// SetNextToken sets the NextToken field's value. +func (s *ListCopyJobsOutput) SetNextToken(v string) *ListCopyJobsOutput { + s.NextToken = &v return s } -// A limit in the request has been exceeded; for example, a maximum number of -// items allowed in a request. -type LimitExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Code_ *string `locationName:"Code" type:"string"` - - Context *string `type:"string"` +type ListFrameworksInput struct { + _ struct{} `type:"structure" nopayload:"true"` - Message_ *string `locationName:"Message" type:"string"` + // The number of desired results from 1 to 1000. Optional. If unspecified, the + // query will return 1 MB of data. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - Type *string `type:"string"` + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -15490,7 +19536,7 @@ type LimitExceededException 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 LimitExceededException) String() string { +func (s ListFrameworksInput) String() string { return awsutil.Prettify(s) } @@ -15499,116 +19545,89 @@ func (s LimitExceededException) 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 LimitExceededException) GoString() string { +func (s ListFrameworksInput) GoString() string { return s.String() } -func newErrorLimitExceededException(v protocol.ResponseMetadata) error { - return &LimitExceededException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFrameworksInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFrameworksInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } -} - -// Code returns the exception type name. -func (s *LimitExceededException) Code() string { - return "LimitExceededException" -} -// Message returns the exception's message. -func (s *LimitExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if invalidParams.Len() > 0 { + return invalidParams } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *LimitExceededException) OrigErr() error { return nil } -func (s *LimitExceededException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetMaxResults sets the MaxResults field's value. +func (s *ListFrameworksInput) SetMaxResults(v int64) *ListFrameworksInput { + s.MaxResults = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *LimitExceededException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetNextToken sets the NextToken field's value. +func (s *ListFrameworksInput) SetNextToken(v string) *ListFrameworksInput { + s.NextToken = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *LimitExceededException) RequestID() string { - return s.RespMetadata.RequestID -} +type ListFrameworksOutput struct { + _ struct{} `type:"structure"` -type ListBackupJobSummariesInput struct { - _ struct{} `type:"structure" nopayload:"true"` + // A list of frameworks with details for each framework, including the framework + // name, Amazon Resource Name (ARN), description, number of controls, creation + // time, and deployment status. + Frameworks []*Framework `type:"list"` - // Returns the job count for the specified account. - // - // If the request is sent from a member account or an account not part of Amazon - // Web Services Organizations, jobs within requestor's account will be returned. - // - // Root, admin, and delegated administrator accounts can use the value ANY to - // return job counts from every account in the organization. - // - // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated - // organization, then returns the sum. - AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. + NextToken *string `type:"string"` +} - // This is the period that sets the boundaries for returned results. - // - // Acceptable values include - // - // * ONE_DAY for daily job count for the prior 14 days. - // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. - // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` +// 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 ListFrameworksOutput) String() string { + return awsutil.Prettify(s) +} - // This parameter sets the maximum number of items to be returned. - // - // The value is an integer. Range of accepted values is from 1 to 500. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// 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 ListFrameworksOutput) GoString() string { + return s.String() +} - // This parameter returns the job count for the specified message category. - // - // Example accepted strings include AccessDenied, Success, and InvalidParameters. - // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of accepted MessageCategory strings. - // - // The the value ANY returns count of all message categories. - // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` +// SetFrameworks sets the Frameworks field's value. +func (s *ListFrameworksOutput) SetFrameworks(v []*Framework) *ListFrameworksOutput { + s.Frameworks = v + return s +} - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetNextToken sets the NextToken field's value. +func (s *ListFrameworksOutput) SetNextToken(v string) *ListFrameworksOutput { + s.NextToken = &v + return s +} - // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes - // to obtain strings for supported resource types. - // - // The the value ANY returns count of all resource types. - // - // AGGREGATE_ALL aggregates job counts for all resource types and returns the - // sum. - // - // The type of Amazon Web Services resource to be backed up; for example, an - // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. - ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` +type ListLegalHoldsInput struct { + _ struct{} `type:"structure" nopayload:"true"` - // This parameter returns the job count for jobs with the specified state. - // - // The the value ANY returns count of all states. - // - // AGGREGATE_ALL aggregates job counts for all states and returns the sum. - State *string `location:"querystring" locationName:"State" type:"string" enum:"BackupJobStatus"` + // The maximum number of resource list items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -15616,7 +19635,7 @@ type ListBackupJobSummariesInput 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 ListBackupJobSummariesInput) String() string { +func (s ListLegalHoldsInput) String() string { return awsutil.Prettify(s) } @@ -15625,13 +19644,13 @@ func (s ListBackupJobSummariesInput) 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 ListBackupJobSummariesInput) GoString() string { +func (s ListLegalHoldsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupJobSummariesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupJobSummariesInput"} +func (s *ListLegalHoldsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLegalHoldsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -15642,66 +19661,26 @@ func (s *ListBackupJobSummariesInput) Validate() error { return nil } -// SetAccountId sets the AccountId field's value. -func (s *ListBackupJobSummariesInput) SetAccountId(v string) *ListBackupJobSummariesInput { - s.AccountId = &v - return s -} - -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListBackupJobSummariesInput) SetAggregationPeriod(v string) *ListBackupJobSummariesInput { - s.AggregationPeriod = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupJobSummariesInput) SetMaxResults(v int64) *ListBackupJobSummariesInput { +func (s *ListLegalHoldsInput) SetMaxResults(v int64) *ListLegalHoldsInput { s.MaxResults = &v return s } -// SetMessageCategory sets the MessageCategory field's value. -func (s *ListBackupJobSummariesInput) SetMessageCategory(v string) *ListBackupJobSummariesInput { - s.MessageCategory = &v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListBackupJobSummariesInput) SetNextToken(v string) *ListBackupJobSummariesInput { +func (s *ListLegalHoldsInput) SetNextToken(v string) *ListLegalHoldsInput { s.NextToken = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *ListBackupJobSummariesInput) SetResourceType(v string) *ListBackupJobSummariesInput { - s.ResourceType = &v - return s -} - -// SetState sets the State field's value. -func (s *ListBackupJobSummariesInput) SetState(v string) *ListBackupJobSummariesInput { - s.State = &v - return s -} - -type ListBackupJobSummariesOutput struct { +type ListLegalHoldsOutput struct { _ struct{} `type:"structure"` - // This is the period that sets the boundaries for returned results. - // - // * ONE_DAY for daily job count for the prior 14 days. - // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. - // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `type:"string"` - - // This request returns a summary that contains Region, Account, State, ResourceType, - // MessageCategory, StartTime, EndTime, and Count of included jobs. - BackupJobSummaries []*BackupJobSummary `type:"list"` + // This is an array of returned legal holds, both active and previous. + LegalHolds []*LegalHold `type:"list"` // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken + // if a request is made to return MaxResults number of resources, NextToken // allows you to return more items in your list starting at the location pointed // to by the next token. NextToken *string `type:"string"` @@ -15712,7 +19691,7 @@ type ListBackupJobSummariesOutput 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 ListBackupJobSummariesOutput) String() string { +func (s ListLegalHoldsOutput) String() string { return awsutil.Prettify(s) } @@ -15721,107 +19700,40 @@ func (s ListBackupJobSummariesOutput) 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 ListBackupJobSummariesOutput) GoString() string { +func (s ListLegalHoldsOutput) GoString() string { return s.String() } -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListBackupJobSummariesOutput) SetAggregationPeriod(v string) *ListBackupJobSummariesOutput { - s.AggregationPeriod = &v - return s -} - -// SetBackupJobSummaries sets the BackupJobSummaries field's value. -func (s *ListBackupJobSummariesOutput) SetBackupJobSummaries(v []*BackupJobSummary) *ListBackupJobSummariesOutput { - s.BackupJobSummaries = v +// SetLegalHolds sets the LegalHolds field's value. +func (s *ListLegalHoldsOutput) SetLegalHolds(v []*LegalHold) *ListLegalHoldsOutput { + s.LegalHolds = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupJobSummariesOutput) SetNextToken(v string) *ListBackupJobSummariesOutput { +func (s *ListLegalHoldsOutput) SetNextToken(v string) *ListLegalHoldsOutput { s.NextToken = &v return s } -type ListBackupJobsInput struct { +type ListProtectedResourcesByBackupVaultInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The account ID to list the jobs from. Returns only backup jobs associated - // with the specified account ID. - // - // If used from an Organizations management account, passing * returns all jobs - // across the organization. - ByAccountId *string `location:"querystring" locationName:"accountId" type:"string"` - - // Returns only backup jobs that will be stored in the specified backup vault. - // Backup vaults are identified by names that are unique to the account used - // to create them and the Amazon Web Services Region where they are created. - // They consist of lowercase letters, numbers, and hyphens. - ByBackupVaultName *string `location:"querystring" locationName:"backupVaultName" type:"string"` - - // Returns only backup jobs completed after a date expressed in Unix format - // and Coordinated Universal Time (UTC). - ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` - - // Returns only backup jobs completed before a date expressed in Unix format - // and Coordinated Universal Time (UTC). - ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` - - // Returns only backup jobs that were created after the specified date. - ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` - - // Returns only backup jobs that were created before the specified date. - ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` - - // This returns a list of backup jobs for the specified message category. - // - // Example strings may include AccessDenied, Success, and InvalidParameters. - // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of MessageCategory strings. - ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` - - // This is a filter to list child (nested) jobs based on parent job ID. - ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` - - // Returns only backup jobs that match the specified resource Amazon Resource - // Name (ARN). - ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` + // This is the list of protected resources by backup vault within the vault(s) + // you specify by account ID. + BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` - // Returns only backup jobs for the specified resources: - // - // * Aurora for Amazon Aurora - // - // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) - // - // * DynamoDB for Amazon DynamoDB - // - // * EBS for Amazon Elastic Block Store - // - // * EC2 for Amazon Elastic Compute Cloud - // - // * EFS for Amazon Elastic File System - // - // * FSx for Amazon FSx - // - // * Neptune for Amazon Neptune - // - // * RDS for Amazon Relational Database Service - // - // * Storage Gateway for Storage Gateway - // - // * S3 for Amazon S3 + // This is the list of protected resources by backup vault within the vault(s) + // you specify by name. // - // * VirtualMachine for virtual machines - ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` - - // Returns only backup jobs that are in the specified state. - ByState *string `location:"querystring" locationName:"state" type:"string" enum:"JobState"` + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15832,7 +19744,7 @@ type ListBackupJobsInput 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 ListBackupJobsInput) String() string { +func (s ListProtectedResourcesByBackupVaultInput) String() string { return awsutil.Prettify(s) } @@ -15841,13 +19753,19 @@ func (s ListBackupJobsInput) 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 ListBackupJobsInput) GoString() string { +func (s ListProtectedResourcesByBackupVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupJobsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupJobsInput"} +func (s *ListProtectedResourcesByBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProtectedResourcesByBackupVaultInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -15858,96 +19776,41 @@ func (s *ListBackupJobsInput) Validate() error { return nil } -// SetByAccountId sets the ByAccountId field's value. -func (s *ListBackupJobsInput) SetByAccountId(v string) *ListBackupJobsInput { - s.ByAccountId = &v - return s -} - -// SetByBackupVaultName sets the ByBackupVaultName field's value. -func (s *ListBackupJobsInput) SetByBackupVaultName(v string) *ListBackupJobsInput { - s.ByBackupVaultName = &v - return s -} - -// SetByCompleteAfter sets the ByCompleteAfter field's value. -func (s *ListBackupJobsInput) SetByCompleteAfter(v time.Time) *ListBackupJobsInput { - s.ByCompleteAfter = &v - return s -} - -// SetByCompleteBefore sets the ByCompleteBefore field's value. -func (s *ListBackupJobsInput) SetByCompleteBefore(v time.Time) *ListBackupJobsInput { - s.ByCompleteBefore = &v - return s -} - -// SetByCreatedAfter sets the ByCreatedAfter field's value. -func (s *ListBackupJobsInput) SetByCreatedAfter(v time.Time) *ListBackupJobsInput { - s.ByCreatedAfter = &v - return s -} - -// SetByCreatedBefore sets the ByCreatedBefore field's value. -func (s *ListBackupJobsInput) SetByCreatedBefore(v time.Time) *ListBackupJobsInput { - s.ByCreatedBefore = &v - return s -} - -// SetByMessageCategory sets the ByMessageCategory field's value. -func (s *ListBackupJobsInput) SetByMessageCategory(v string) *ListBackupJobsInput { - s.ByMessageCategory = &v - return s -} - -// SetByParentJobId sets the ByParentJobId field's value. -func (s *ListBackupJobsInput) SetByParentJobId(v string) *ListBackupJobsInput { - s.ByParentJobId = &v - return s -} - -// SetByResourceArn sets the ByResourceArn field's value. -func (s *ListBackupJobsInput) SetByResourceArn(v string) *ListBackupJobsInput { - s.ByResourceArn = &v - return s -} - -// SetByResourceType sets the ByResourceType field's value. -func (s *ListBackupJobsInput) SetByResourceType(v string) *ListBackupJobsInput { - s.ByResourceType = &v +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *ListProtectedResourcesByBackupVaultInput) SetBackupVaultAccountId(v string) *ListProtectedResourcesByBackupVaultInput { + s.BackupVaultAccountId = &v return s } -// SetByState sets the ByState field's value. -func (s *ListBackupJobsInput) SetByState(v string) *ListBackupJobsInput { - s.ByState = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *ListProtectedResourcesByBackupVaultInput) SetBackupVaultName(v string) *ListProtectedResourcesByBackupVaultInput { + s.BackupVaultName = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupJobsInput) SetMaxResults(v int64) *ListBackupJobsInput { +func (s *ListProtectedResourcesByBackupVaultInput) SetMaxResults(v int64) *ListProtectedResourcesByBackupVaultInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupJobsInput) SetNextToken(v string) *ListBackupJobsInput { +func (s *ListProtectedResourcesByBackupVaultInput) SetNextToken(v string) *ListProtectedResourcesByBackupVaultInput { s.NextToken = &v return s } -type ListBackupJobsOutput struct { +type ListProtectedResourcesByBackupVaultOutput struct { _ struct{} `type:"structure"` - // An array of structures containing metadata about your backup jobs returned - // in JSON format. - BackupJobs []*Job `type:"list"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` + + // These are the results returned for the request ListProtectedResourcesByBackupVault. + Results []*ProtectedResource `type:"list"` } // String returns the string representation. @@ -15955,7 +19818,7 @@ type ListBackupJobsOutput 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 ListBackupJobsOutput) String() string { +func (s ListProtectedResourcesByBackupVaultOutput) String() string { return awsutil.Prettify(s) } @@ -15964,30 +19827,30 @@ func (s ListBackupJobsOutput) 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 ListBackupJobsOutput) GoString() string { +func (s ListProtectedResourcesByBackupVaultOutput) GoString() string { return s.String() } -// SetBackupJobs sets the BackupJobs field's value. -func (s *ListBackupJobsOutput) SetBackupJobs(v []*Job) *ListBackupJobsOutput { - s.BackupJobs = v +// SetNextToken sets the NextToken field's value. +func (s *ListProtectedResourcesByBackupVaultOutput) SetNextToken(v string) *ListProtectedResourcesByBackupVaultOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupJobsOutput) SetNextToken(v string) *ListBackupJobsOutput { - s.NextToken = &v +// SetResults sets the Results field's value. +func (s *ListProtectedResourcesByBackupVaultOutput) SetResults(v []*ProtectedResource) *ListProtectedResourcesByBackupVaultOutput { + s.Results = v return s } -type ListBackupPlanTemplatesInput struct { +type ListProtectedResourcesInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -15998,7 +19861,7 @@ type ListBackupPlanTemplatesInput 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 ListBackupPlanTemplatesInput) String() string { +func (s ListProtectedResourcesInput) String() string { return awsutil.Prettify(s) } @@ -16007,13 +19870,13 @@ func (s ListBackupPlanTemplatesInput) 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 ListBackupPlanTemplatesInput) GoString() string { +func (s ListProtectedResourcesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupPlanTemplatesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupPlanTemplatesInput"} +func (s *ListProtectedResourcesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProtectedResourcesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -16025,28 +19888,30 @@ func (s *ListBackupPlanTemplatesInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupPlanTemplatesInput) SetMaxResults(v int64) *ListBackupPlanTemplatesInput { +func (s *ListProtectedResourcesInput) SetMaxResults(v int64) *ListProtectedResourcesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupPlanTemplatesInput) SetNextToken(v string) *ListBackupPlanTemplatesInput { +func (s *ListProtectedResourcesInput) SetNextToken(v string) *ListProtectedResourcesInput { s.NextToken = &v return s } -type ListBackupPlanTemplatesOutput struct { +type ListProtectedResourcesOutput struct { _ struct{} `type:"structure"` - // An array of template list items containing metadata about your saved templates. - BackupPlanTemplatesList []*PlanTemplatesListMember `type:"list"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` + + // An array of resources successfully backed up by Backup including the time + // the resource was saved, an Amazon Resource Name (ARN) of the resource, and + // a resource type. + Results []*ProtectedResource `type:"list"` } // String returns the string representation. @@ -16054,7 +19919,7 @@ type ListBackupPlanTemplatesOutput 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 ListBackupPlanTemplatesOutput) String() string { +func (s ListProtectedResourcesOutput) String() string { return awsutil.Prettify(s) } @@ -16063,35 +19928,64 @@ func (s ListBackupPlanTemplatesOutput) 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 ListBackupPlanTemplatesOutput) GoString() string { +func (s ListProtectedResourcesOutput) GoString() string { return s.String() } -// SetBackupPlanTemplatesList sets the BackupPlanTemplatesList field's value. -func (s *ListBackupPlanTemplatesOutput) SetBackupPlanTemplatesList(v []*PlanTemplatesListMember) *ListBackupPlanTemplatesOutput { - s.BackupPlanTemplatesList = v +// SetNextToken sets the NextToken field's value. +func (s *ListProtectedResourcesOutput) SetNextToken(v string) *ListProtectedResourcesOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupPlanTemplatesOutput) SetNextToken(v string) *ListBackupPlanTemplatesOutput { - s.NextToken = &v +// SetResults sets the Results field's value. +func (s *ListProtectedResourcesOutput) SetResults(v []*ProtectedResource) *ListProtectedResourcesOutput { + s.Results = v return s } -type ListBackupPlanVersionsInput struct { +type ListRecoveryPointsByBackupVaultInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies a backup plan. + // This parameter will sort the list of recovery points by account ID. + BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` + // Backup vault name might not be available when a supported service creates + // the backup. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // Returns only recovery points that match the specified backup plan ID. + ByBackupPlanId *string `location:"querystring" locationName:"backupPlanId" type:"string"` + + // Returns only recovery points that were created after the specified timestamp. + ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` + + // Returns only recovery points that were created before the specified timestamp. + ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` + + // This returns only recovery points that match the specified parent (composite) + // recovery point Amazon Resource Name (ARN). + ByParentRecoveryPointArn *string `location:"querystring" locationName:"parentRecoveryPointArn" type:"string"` + + // Returns only recovery points that match the specified resource Amazon Resource + // Name (ARN). + ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` + + // Returns only recovery points that match the specified resource type. + ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` @@ -16102,7 +19996,7 @@ type ListBackupPlanVersionsInput 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 ListBackupPlanVersionsInput) String() string { +func (s ListRecoveryPointsByBackupVaultInput) String() string { return awsutil.Prettify(s) } @@ -16111,18 +20005,18 @@ func (s ListBackupPlanVersionsInput) 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 ListBackupPlanVersionsInput) GoString() string { +func (s ListRecoveryPointsByBackupVaultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupPlanVersionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupPlanVersionsInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) +func (s *ListRecoveryPointsByBackupVaultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByBackupVaultInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) @@ -16134,35 +20028,78 @@ func (s *ListBackupPlanVersionsInput) Validate() error { return nil } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *ListBackupPlanVersionsInput) SetBackupPlanId(v string) *ListBackupPlanVersionsInput { - s.BackupPlanId = &v +// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetBackupVaultAccountId(v string) *ListRecoveryPointsByBackupVaultInput { + s.BackupVaultAccountId = &v + return s +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetBackupVaultName(v string) *ListRecoveryPointsByBackupVaultInput { + s.BackupVaultName = &v + return s +} + +// SetByBackupPlanId sets the ByBackupPlanId field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByBackupPlanId(v string) *ListRecoveryPointsByBackupVaultInput { + s.ByBackupPlanId = &v + return s +} + +// SetByCreatedAfter sets the ByCreatedAfter field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByCreatedAfter(v time.Time) *ListRecoveryPointsByBackupVaultInput { + s.ByCreatedAfter = &v + return s +} + +// SetByCreatedBefore sets the ByCreatedBefore field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByCreatedBefore(v time.Time) *ListRecoveryPointsByBackupVaultInput { + s.ByCreatedBefore = &v + return s +} + +// SetByParentRecoveryPointArn sets the ByParentRecoveryPointArn field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByParentRecoveryPointArn(v string) *ListRecoveryPointsByBackupVaultInput { + s.ByParentRecoveryPointArn = &v + return s +} + +// SetByResourceArn sets the ByResourceArn field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByResourceArn(v string) *ListRecoveryPointsByBackupVaultInput { + s.ByResourceArn = &v + return s +} + +// SetByResourceType sets the ByResourceType field's value. +func (s *ListRecoveryPointsByBackupVaultInput) SetByResourceType(v string) *ListRecoveryPointsByBackupVaultInput { + s.ByResourceType = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupPlanVersionsInput) SetMaxResults(v int64) *ListBackupPlanVersionsInput { +func (s *ListRecoveryPointsByBackupVaultInput) SetMaxResults(v int64) *ListRecoveryPointsByBackupVaultInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupPlanVersionsInput) SetNextToken(v string) *ListBackupPlanVersionsInput { +func (s *ListRecoveryPointsByBackupVaultInput) SetNextToken(v string) *ListRecoveryPointsByBackupVaultInput { s.NextToken = &v return s } -type ListBackupPlanVersionsOutput struct { +type ListRecoveryPointsByBackupVaultOutput struct { _ struct{} `type:"structure"` - // An array of version list items containing metadata about your backup plans. - BackupPlanVersionsList []*PlansListMember `type:"list"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` + + // An array of objects that contain detailed information about recovery points + // saved in a backup vault. + RecoveryPoints []*RecoveryPointByBackupVault `type:"list"` } // String returns the string representation. @@ -16170,7 +20107,7 @@ type ListBackupPlanVersionsOutput 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 ListBackupPlanVersionsOutput) String() string { +func (s ListRecoveryPointsByBackupVaultOutput) String() string { return awsutil.Prettify(s) } @@ -16179,36 +20116,37 @@ func (s ListBackupPlanVersionsOutput) 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 ListBackupPlanVersionsOutput) GoString() string { +func (s ListRecoveryPointsByBackupVaultOutput) GoString() string { return s.String() } -// SetBackupPlanVersionsList sets the BackupPlanVersionsList field's value. -func (s *ListBackupPlanVersionsOutput) SetBackupPlanVersionsList(v []*PlansListMember) *ListBackupPlanVersionsOutput { - s.BackupPlanVersionsList = v +// SetNextToken sets the NextToken field's value. +func (s *ListRecoveryPointsByBackupVaultOutput) SetNextToken(v string) *ListRecoveryPointsByBackupVaultOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupPlanVersionsOutput) SetNextToken(v string) *ListBackupPlanVersionsOutput { - s.NextToken = &v +// SetRecoveryPoints sets the RecoveryPoints field's value. +func (s *ListRecoveryPointsByBackupVaultOutput) SetRecoveryPoints(v []*RecoveryPointByBackupVault) *ListRecoveryPointsByBackupVaultOutput { + s.RecoveryPoints = v return s } -type ListBackupPlansInput struct { +type ListRecoveryPointsByLegalHoldInput struct { _ struct{} `type:"structure" nopayload:"true"` - // A Boolean value with a default value of FALSE that returns deleted backup - // plans when set to TRUE. - IncludeDeleted *bool `location:"querystring" locationName:"includeDeleted" type:"boolean"` + // This is the ID of the legal hold. + // + // LegalHoldId is a required field + LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` - // The maximum number of items to be returned. + // This is the maximum number of resource list items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. + // This is the next item following a partial list of returned resources. For + // example, if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } @@ -16217,7 +20155,7 @@ type ListBackupPlansInput 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 ListBackupPlansInput) String() string { +func (s ListRecoveryPointsByLegalHoldInput) String() string { return awsutil.Prettify(s) } @@ -16226,13 +20164,19 @@ func (s ListBackupPlansInput) 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 ListBackupPlansInput) GoString() string { +func (s ListRecoveryPointsByLegalHoldInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupPlansInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupPlansInput"} +func (s *ListRecoveryPointsByLegalHoldInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByLegalHoldInput"} + if s.LegalHoldId == nil { + invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) + } + if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -16243,36 +20187,32 @@ func (s *ListBackupPlansInput) Validate() error { return nil } -// SetIncludeDeleted sets the IncludeDeleted field's value. -func (s *ListBackupPlansInput) SetIncludeDeleted(v bool) *ListBackupPlansInput { - s.IncludeDeleted = &v +// SetLegalHoldId sets the LegalHoldId field's value. +func (s *ListRecoveryPointsByLegalHoldInput) SetLegalHoldId(v string) *ListRecoveryPointsByLegalHoldInput { + s.LegalHoldId = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupPlansInput) SetMaxResults(v int64) *ListBackupPlansInput { +func (s *ListRecoveryPointsByLegalHoldInput) SetMaxResults(v int64) *ListRecoveryPointsByLegalHoldInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupPlansInput) SetNextToken(v string) *ListBackupPlansInput { +func (s *ListRecoveryPointsByLegalHoldInput) SetNextToken(v string) *ListRecoveryPointsByLegalHoldInput { s.NextToken = &v return s } -type ListBackupPlansOutput struct { +type ListRecoveryPointsByLegalHoldOutput struct { _ struct{} `type:"structure"` - // An array of backup plan list items containing metadata about your saved backup - // plans. - BackupPlansList []*PlansListMember `type:"list"` - - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. + // This return is the next item following a partial list of returned resources. NextToken *string `type:"string"` + + // This is a list of the recovery points returned by ListRecoveryPointsByLegalHold. + RecoveryPoints []*RecoveryPointMember `type:"list"` } // String returns the string representation. @@ -16280,7 +20220,7 @@ type ListBackupPlansOutput 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 ListBackupPlansOutput) String() string { +func (s ListRecoveryPointsByLegalHoldOutput) String() string { return awsutil.Prettify(s) } @@ -16289,38 +20229,41 @@ func (s ListBackupPlansOutput) 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 ListBackupPlansOutput) GoString() string { +func (s ListRecoveryPointsByLegalHoldOutput) GoString() string { return s.String() } -// SetBackupPlansList sets the BackupPlansList field's value. -func (s *ListBackupPlansOutput) SetBackupPlansList(v []*PlansListMember) *ListBackupPlansOutput { - s.BackupPlansList = v +// SetNextToken sets the NextToken field's value. +func (s *ListRecoveryPointsByLegalHoldOutput) SetNextToken(v string) *ListRecoveryPointsByLegalHoldOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupPlansOutput) SetNextToken(v string) *ListBackupPlansOutput { - s.NextToken = &v +// SetRecoveryPoints sets the RecoveryPoints field's value. +func (s *ListRecoveryPointsByLegalHoldOutput) SetRecoveryPoints(v []*RecoveryPointMember) *ListRecoveryPointsByLegalHoldOutput { + s.RecoveryPoints = v return s } -type ListBackupSelectionsInput struct { +type ListRecoveryPointsByResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Uniquely identifies a backup plan. - // - // BackupPlanId is a required field - BackupPlanId *string `location:"uri" locationName:"backupPlanId" type:"string" required:"true"` - // The maximum number of items to be returned. + // + // Amazon RDS requires a value of at least 20. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // An ARN that uniquely identifies a resource. The format of the ARN depends + // on the resource type. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` } // String returns the string representation. @@ -16328,7 +20271,7 @@ type ListBackupSelectionsInput 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 ListBackupSelectionsInput) String() string { +func (s ListRecoveryPointsByResourceInput) String() string { return awsutil.Prettify(s) } @@ -16337,22 +20280,22 @@ func (s ListBackupSelectionsInput) 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 ListBackupSelectionsInput) GoString() string { +func (s ListRecoveryPointsByResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupSelectionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupSelectionsInput"} - if s.BackupPlanId == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanId")) - } - if s.BackupPlanId != nil && len(*s.BackupPlanId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupPlanId", 1)) - } +func (s *ListRecoveryPointsByResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByResourceInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -16360,36 +20303,38 @@ func (s *ListBackupSelectionsInput) Validate() error { return nil } -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *ListBackupSelectionsInput) SetBackupPlanId(v string) *ListBackupSelectionsInput { - s.BackupPlanId = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupSelectionsInput) SetMaxResults(v int64) *ListBackupSelectionsInput { +func (s *ListRecoveryPointsByResourceInput) SetMaxResults(v int64) *ListRecoveryPointsByResourceInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupSelectionsInput) SetNextToken(v string) *ListBackupSelectionsInput { +func (s *ListRecoveryPointsByResourceInput) SetNextToken(v string) *ListRecoveryPointsByResourceInput { s.NextToken = &v return s } -type ListBackupSelectionsOutput struct { - _ struct{} `type:"structure"` +// SetResourceArn sets the ResourceArn field's value. +func (s *ListRecoveryPointsByResourceInput) SetResourceArn(v string) *ListRecoveryPointsByResourceInput { + s.ResourceArn = &v + return s +} - // An array of backup selection list items containing metadata about each resource - // in the list. - BackupSelectionsList []*SelectionsListMember `type:"list"` +type ListRecoveryPointsByResourceOutput struct { + _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` + + // An array of objects that contain detailed information about recovery points + // of the specified resource type. + // + // Only Amazon EFS and Amazon EC2 recovery points return BackupVaultName. + RecoveryPoints []*RecoveryPointByResource `type:"list"` } // String returns the string representation. @@ -16397,7 +20342,7 @@ type ListBackupSelectionsOutput 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 ListBackupSelectionsOutput) String() string { +func (s ListRecoveryPointsByResourceOutput) String() string { return awsutil.Prettify(s) } @@ -16406,39 +20351,50 @@ func (s ListBackupSelectionsOutput) 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 ListBackupSelectionsOutput) GoString() string { +func (s ListRecoveryPointsByResourceOutput) GoString() string { return s.String() } -// SetBackupSelectionsList sets the BackupSelectionsList field's value. -func (s *ListBackupSelectionsOutput) SetBackupSelectionsList(v []*SelectionsListMember) *ListBackupSelectionsOutput { - s.BackupSelectionsList = v +// SetNextToken sets the NextToken field's value. +func (s *ListRecoveryPointsByResourceOutput) SetNextToken(v string) *ListRecoveryPointsByResourceOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupSelectionsOutput) SetNextToken(v string) *ListBackupSelectionsOutput { - s.NextToken = &v +// SetRecoveryPoints sets the RecoveryPoints field's value. +func (s *ListRecoveryPointsByResourceOutput) SetRecoveryPoints(v []*RecoveryPointByResource) *ListRecoveryPointsByResourceOutput { + s.RecoveryPoints = v return s } -type ListBackupVaultsInput struct { +type ListReportJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // This parameter will sort the list of vaults by shared vaults. - ByShared *bool `location:"querystring" locationName:"shared" type:"boolean"` + // Returns only report jobs that were created after the date and time specified + // in Unix format and Coordinated Universal Time (UTC). For example, the value + // 1516925490 represents Friday, January 26, 2018 12:11:30 AM. + ByCreationAfter *time.Time `location:"querystring" locationName:"CreationAfter" type:"timestamp"` - // This parameter will sort the list of vaults by vault type. - ByVaultType *string `location:"querystring" locationName:"vaultType" type:"string" enum:"VaultType"` + // Returns only report jobs that were created before the date and time specified + // in Unix format and Coordinated Universal Time (UTC). For example, the value + // 1516925490 represents Friday, January 26, 2018 12:11:30 AM. + ByCreationBefore *time.Time `location:"querystring" locationName:"CreationBefore" type:"timestamp"` - // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + // Returns only report jobs with the specified report plan name. + ByReportPlanName *string `location:"querystring" locationName:"ReportPlanName" min:"1" type:"string"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // Returns only report jobs that are in the specified status. The statuses are: + // + // CREATED | RUNNING | COMPLETED | FAILED + ByStatus *string `location:"querystring" locationName:"Status" type:"string"` + + // The number of desired results from 1 to 1000. Optional. If unspecified, the + // query will return 1 MB of data. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -16446,7 +20402,7 @@ type ListBackupVaultsInput 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 ListBackupVaultsInput) String() string { +func (s ListReportJobsInput) String() string { return awsutil.Prettify(s) } @@ -16455,13 +20411,16 @@ func (s ListBackupVaultsInput) 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 ListBackupVaultsInput) GoString() string { +func (s ListReportJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListBackupVaultsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListBackupVaultsInput"} +func (s *ListReportJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReportJobsInput"} + if s.ByReportPlanName != nil && len(*s.ByReportPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ByReportPlanName", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -16472,44 +20431,51 @@ func (s *ListBackupVaultsInput) Validate() error { return nil } -// SetByShared sets the ByShared field's value. -func (s *ListBackupVaultsInput) SetByShared(v bool) *ListBackupVaultsInput { - s.ByShared = &v +// SetByCreationAfter sets the ByCreationAfter field's value. +func (s *ListReportJobsInput) SetByCreationAfter(v time.Time) *ListReportJobsInput { + s.ByCreationAfter = &v return s } -// SetByVaultType sets the ByVaultType field's value. -func (s *ListBackupVaultsInput) SetByVaultType(v string) *ListBackupVaultsInput { - s.ByVaultType = &v +// SetByCreationBefore sets the ByCreationBefore field's value. +func (s *ListReportJobsInput) SetByCreationBefore(v time.Time) *ListReportJobsInput { + s.ByCreationBefore = &v + return s +} + +// SetByReportPlanName sets the ByReportPlanName field's value. +func (s *ListReportJobsInput) SetByReportPlanName(v string) *ListReportJobsInput { + s.ByReportPlanName = &v + return s +} + +// SetByStatus sets the ByStatus field's value. +func (s *ListReportJobsInput) SetByStatus(v string) *ListReportJobsInput { + s.ByStatus = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListBackupVaultsInput) SetMaxResults(v int64) *ListBackupVaultsInput { +func (s *ListReportJobsInput) SetMaxResults(v int64) *ListReportJobsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListBackupVaultsInput) SetNextToken(v string) *ListBackupVaultsInput { +func (s *ListReportJobsInput) SetNextToken(v string) *ListReportJobsInput { s.NextToken = &v return s } -type ListBackupVaultsOutput struct { +type ListReportJobsOutput struct { _ struct{} `type:"structure"` - // An array of backup vault list members containing vault metadata, including - // Amazon Resource Name (ARN), display name, creation date, number of saved - // recovery points, and encryption information if the resources saved in the - // backup vault are encrypted. - BackupVaultList []*VaultListMember `type:"list"` - - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. NextToken *string `type:"string"` + + // Details about your report jobs in JSON format. + ReportJobs []*ReportJob `type:"list"` } // String returns the string representation. @@ -16517,7 +20483,7 @@ type ListBackupVaultsOutput 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 ListBackupVaultsOutput) String() string { +func (s ListReportJobsOutput) String() string { return awsutil.Prettify(s) } @@ -16526,88 +20492,32 @@ func (s ListBackupVaultsOutput) 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 ListBackupVaultsOutput) GoString() string { +func (s ListReportJobsOutput) GoString() string { return s.String() } -// SetBackupVaultList sets the BackupVaultList field's value. -func (s *ListBackupVaultsOutput) SetBackupVaultList(v []*VaultListMember) *ListBackupVaultsOutput { - s.BackupVaultList = v +// SetNextToken sets the NextToken field's value. +func (s *ListReportJobsOutput) SetNextToken(v string) *ListReportJobsOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListBackupVaultsOutput) SetNextToken(v string) *ListBackupVaultsOutput { - s.NextToken = &v +// SetReportJobs sets the ReportJobs field's value. +func (s *ListReportJobsOutput) SetReportJobs(v []*ReportJob) *ListReportJobsOutput { + s.ReportJobs = v return s } -type ListCopyJobSummariesInput struct { +type ListReportPlansInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Returns the job count for the specified account. - // - // If the request is sent from a member account or an account not part of Amazon - // Web Services Organizations, jobs within requestor's account will be returned. - // - // Root, admin, and delegated administrator accounts can use the value ANY to - // return job counts from every account in the organization. - // - // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated - // organization, then returns the sum. - AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` - - // This is the period that sets the boundaries for returned results. - // - // * ONE_DAY for daily job count for the prior 14 days. - // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. - // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` - - // This parameter sets the maximum number of items to be returned. - // - // The value is an integer. Range of accepted values is from 1 to 500. + // The number of desired results from 1 to 1000. Optional. If unspecified, the + // query will return 1 MB of data. MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - // This parameter returns the job count for the specified message category. - // - // Example accepted strings include AccessDenied, Success, and InvalidParameters. - // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of accepted MessageCategory strings. - // - // The the value ANY returns count of all message categories. - // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - MessageCategory *string `location:"querystring" locationName:"MessageCategory" type:"string"` - - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` - - // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes - // to obtain strings for supported resource types. - // - // The the value ANY returns count of all resource types. - // - // AGGREGATE_ALL aggregates job counts for all resource types and returns the - // sum. - // - // The type of Amazon Web Services resource to be backed up; for example, an - // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. - ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` - - // This parameter returns the job count for jobs with the specified state. - // - // The the value ANY returns count of all states. - // - // AGGREGATE_ALL aggregates job counts for all states and returns the sum. - State *string `location:"querystring" locationName:"State" type:"string" enum:"CopyJobStatus"` } // String returns the string representation. @@ -16615,7 +20525,7 @@ type ListCopyJobSummariesInput 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 ListCopyJobSummariesInput) String() string { +func (s ListReportPlansInput) String() string { return awsutil.Prettify(s) } @@ -16624,13 +20534,13 @@ func (s ListCopyJobSummariesInput) 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 ListCopyJobSummariesInput) GoString() string { +func (s ListReportPlansInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListCopyJobSummariesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListCopyJobSummariesInput"} +func (s *ListReportPlansInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReportPlansInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -16641,69 +20551,30 @@ func (s *ListCopyJobSummariesInput) Validate() error { return nil } -// SetAccountId sets the AccountId field's value. -func (s *ListCopyJobSummariesInput) SetAccountId(v string) *ListCopyJobSummariesInput { - s.AccountId = &v - return s -} - -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListCopyJobSummariesInput) SetAggregationPeriod(v string) *ListCopyJobSummariesInput { - s.AggregationPeriod = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListCopyJobSummariesInput) SetMaxResults(v int64) *ListCopyJobSummariesInput { +func (s *ListReportPlansInput) SetMaxResults(v int64) *ListReportPlansInput { s.MaxResults = &v return s } -// SetMessageCategory sets the MessageCategory field's value. -func (s *ListCopyJobSummariesInput) SetMessageCategory(v string) *ListCopyJobSummariesInput { - s.MessageCategory = &v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListCopyJobSummariesInput) SetNextToken(v string) *ListCopyJobSummariesInput { +func (s *ListReportPlansInput) SetNextToken(v string) *ListReportPlansInput { s.NextToken = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *ListCopyJobSummariesInput) SetResourceType(v string) *ListCopyJobSummariesInput { - s.ResourceType = &v - return s -} - -// SetState sets the State field's value. -func (s *ListCopyJobSummariesInput) SetState(v string) *ListCopyJobSummariesInput { - s.State = &v - return s -} - -type ListCopyJobSummariesOutput struct { +type ListReportPlansOutput struct { _ struct{} `type:"structure"` - // This is the period that sets the boundaries for returned results. - // - // * ONE_DAY for daily job count for the prior 14 days. - // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. - // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `type:"string"` - - // This return shows a summary that contains Region, Account, State, ResourceType, - // MessageCategory, StartTime, EndTime, and Count of included jobs. - CopyJobSummaries []*CopyJobSummary `type:"list"` - - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. + // An identifier that was returned from the previous call to this operation, + // which can be used to return the next set of items in the list. NextToken *string `type:"string"` + + // A list of your report plans with detailed information for each plan. This + // information includes the Amazon Resource Name (ARN), report plan name, description, + // settings, delivery channel, deployment status, creation time, and last times + // the report plan attempted to and successfully ran. + ReportPlans []*ReportPlan `type:"list"` } // String returns the string representation. @@ -16711,7 +20582,7 @@ type ListCopyJobSummariesOutput 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 ListCopyJobSummariesOutput) String() string { +func (s ListReportPlansOutput) String() string { return awsutil.Prettify(s) } @@ -16720,110 +20591,78 @@ func (s ListCopyJobSummariesOutput) 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 ListCopyJobSummariesOutput) GoString() string { +func (s ListReportPlansOutput) GoString() string { return s.String() } -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListCopyJobSummariesOutput) SetAggregationPeriod(v string) *ListCopyJobSummariesOutput { - s.AggregationPeriod = &v - return s -} - -// SetCopyJobSummaries sets the CopyJobSummaries field's value. -func (s *ListCopyJobSummariesOutput) SetCopyJobSummaries(v []*CopyJobSummary) *ListCopyJobSummariesOutput { - s.CopyJobSummaries = v +// SetNextToken sets the NextToken field's value. +func (s *ListReportPlansOutput) SetNextToken(v string) *ListReportPlansOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListCopyJobSummariesOutput) SetNextToken(v string) *ListCopyJobSummariesOutput { - s.NextToken = &v +// SetReportPlans sets the ReportPlans field's value. +func (s *ListReportPlansOutput) SetReportPlans(v []*ReportPlan) *ListReportPlansOutput { + s.ReportPlans = v return s } -type ListCopyJobsInput struct { +type ListRestoreJobSummariesInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The account ID to list the jobs from. Returns only copy jobs associated with - // the specified account ID. - ByAccountId *string `location:"querystring" locationName:"accountId" type:"string"` - - // Returns only copy jobs completed after a date expressed in Unix format and - // Coordinated Universal Time (UTC). - ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` - - // Returns only copy jobs completed before a date expressed in Unix format and - // Coordinated Universal Time (UTC). - ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` - - // Returns only copy jobs that were created after the specified date. - ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` - - // Returns only copy jobs that were created before the specified date. - ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` - - // An Amazon Resource Name (ARN) that uniquely identifies a source backup vault - // to copy from; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - ByDestinationVaultArn *string `location:"querystring" locationName:"destinationVaultArn" type:"string"` - - // This parameter returns the job count for the specified message category. + // Returns the job count for the specified account. // - // Example accepted strings include AccessDenied, Success, and InvalidParameters. - // See Monitoring (https://docs.aws.amazon.com/aws-backup/latest/devguide/monitoring.html) - // for a list of accepted MessageCategory strings. + // If the request is sent from a member account or an account not part of Amazon + // Web Services Organizations, jobs within requestor's account will be returned. // - // The the value ANY returns count of all message categories. + // Root, admin, and delegated administrator accounts can use the value ANY to + // return job counts from every account in the organization. // - // AGGREGATE_ALL aggregates job counts for all message categories and returns - // the sum. - ByMessageCategory *string `location:"querystring" locationName:"messageCategory" type:"string"` - - // This is a filter to list child (nested) jobs based on parent job ID. - ByParentJobId *string `location:"querystring" locationName:"parentJobId" type:"string"` - - // Returns only copy jobs that match the specified resource Amazon Resource - // Name (ARN). - ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` + // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated + // organization, then returns the sum. + AccountId *string `location:"querystring" locationName:"AccountId" type:"string"` - // Returns only backup jobs for the specified resources: - // - // * Aurora for Amazon Aurora - // - // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // This is the period that sets the boundaries for returned results. // - // * DynamoDB for Amazon DynamoDB + // Acceptable values include // - // * EBS for Amazon Elastic Block Store + // * ONE_DAY for daily job count for the prior 14 days. // - // * EC2 for Amazon Elastic Compute Cloud + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. // - // * EFS for Amazon Elastic File System + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` + + // This parameter sets the maximum number of items to be returned. // - // * FSx for Amazon FSx + // The value is an integer. Range of accepted values is from 1 to 500. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes + // to obtain strings for supported resource types. // - // * Neptune for Amazon Neptune + // The the value ANY returns count of all resource types. // - // * RDS for Amazon Relational Database Service + // AGGREGATE_ALL aggregates job counts for all resource types and returns the + // sum. // - // * Storage Gateway for Storage Gateway + // The type of Amazon Web Services resource to be backed up; for example, an + // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database + // Service (Amazon RDS) database. + ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + + // This parameter returns the job count for jobs with the specified state. // - // * S3 for Amazon S3 + // The the value ANY returns count of all states. // - // * VirtualMachine for virtual machines - ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` - - // Returns only copy jobs that are in the specified state. - ByState *string `location:"querystring" locationName:"state" type:"string" enum:"CopyJobState"` - - // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // AGGREGATE_ALL aggregates job counts for all states and returns the sum. + State *string `location:"querystring" locationName:"State" type:"string" enum:"RestoreJobState"` } // String returns the string representation. @@ -16831,7 +20670,7 @@ type ListCopyJobsInput 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 ListCopyJobsInput) String() string { +func (s ListRestoreJobSummariesInput) String() string { return awsutil.Prettify(s) } @@ -16840,13 +20679,13 @@ func (s ListCopyJobsInput) 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 ListCopyJobsInput) GoString() string { +func (s ListRestoreJobSummariesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListCopyJobsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListCopyJobsInput"} +func (s *ListRestoreJobSummariesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobSummariesInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -16857,96 +20696,63 @@ func (s *ListCopyJobsInput) Validate() error { return nil } -// SetByAccountId sets the ByAccountId field's value. -func (s *ListCopyJobsInput) SetByAccountId(v string) *ListCopyJobsInput { - s.ByAccountId = &v - return s -} - -// SetByCompleteAfter sets the ByCompleteAfter field's value. -func (s *ListCopyJobsInput) SetByCompleteAfter(v time.Time) *ListCopyJobsInput { - s.ByCompleteAfter = &v - return s -} - -// SetByCompleteBefore sets the ByCompleteBefore field's value. -func (s *ListCopyJobsInput) SetByCompleteBefore(v time.Time) *ListCopyJobsInput { - s.ByCompleteBefore = &v - return s -} - -// SetByCreatedAfter sets the ByCreatedAfter field's value. -func (s *ListCopyJobsInput) SetByCreatedAfter(v time.Time) *ListCopyJobsInput { - s.ByCreatedAfter = &v - return s -} - -// SetByCreatedBefore sets the ByCreatedBefore field's value. -func (s *ListCopyJobsInput) SetByCreatedBefore(v time.Time) *ListCopyJobsInput { - s.ByCreatedBefore = &v - return s -} - -// SetByDestinationVaultArn sets the ByDestinationVaultArn field's value. -func (s *ListCopyJobsInput) SetByDestinationVaultArn(v string) *ListCopyJobsInput { - s.ByDestinationVaultArn = &v - return s -} - -// SetByMessageCategory sets the ByMessageCategory field's value. -func (s *ListCopyJobsInput) SetByMessageCategory(v string) *ListCopyJobsInput { - s.ByMessageCategory = &v - return s -} - -// SetByParentJobId sets the ByParentJobId field's value. -func (s *ListCopyJobsInput) SetByParentJobId(v string) *ListCopyJobsInput { - s.ByParentJobId = &v - return s -} - -// SetByResourceArn sets the ByResourceArn field's value. -func (s *ListCopyJobsInput) SetByResourceArn(v string) *ListCopyJobsInput { - s.ByResourceArn = &v - return s -} - -// SetByResourceType sets the ByResourceType field's value. -func (s *ListCopyJobsInput) SetByResourceType(v string) *ListCopyJobsInput { - s.ByResourceType = &v +// SetAccountId sets the AccountId field's value. +func (s *ListRestoreJobSummariesInput) SetAccountId(v string) *ListRestoreJobSummariesInput { + s.AccountId = &v return s } -// SetByState sets the ByState field's value. -func (s *ListCopyJobsInput) SetByState(v string) *ListCopyJobsInput { - s.ByState = &v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListRestoreJobSummariesInput) SetAggregationPeriod(v string) *ListRestoreJobSummariesInput { + s.AggregationPeriod = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListCopyJobsInput) SetMaxResults(v int64) *ListCopyJobsInput { +func (s *ListRestoreJobSummariesInput) SetMaxResults(v int64) *ListRestoreJobSummariesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListCopyJobsInput) SetNextToken(v string) *ListCopyJobsInput { +func (s *ListRestoreJobSummariesInput) SetNextToken(v string) *ListRestoreJobSummariesInput { s.NextToken = &v return s } -type ListCopyJobsOutput struct { +// SetResourceType sets the ResourceType field's value. +func (s *ListRestoreJobSummariesInput) SetResourceType(v string) *ListRestoreJobSummariesInput { + s.ResourceType = &v + return s +} + +// SetState sets the State field's value. +func (s *ListRestoreJobSummariesInput) SetState(v string) *ListRestoreJobSummariesInput { + s.State = &v + return s +} + +type ListRestoreJobSummariesOutput struct { _ struct{} `type:"structure"` - // An array of structures containing metadata about your copy jobs returned - // in JSON format. - CopyJobs []*CopyJob `type:"list"` + // This is the period that sets the boundaries for returned results. + // + // * ONE_DAY for daily job count for the prior 14 days. + // + // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // + // * FOURTEEN_DAYS for aggregated job count for prior 14 days. + AggregationPeriod *string `type:"string"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. + // The next item following a partial list of returned resources. For example, + // if a request is made to return MaxResults number of resources, NextToken + // allows you to return more items in your list starting at the location pointed + // to by the next token. NextToken *string `type:"string"` + + // This return contains a summary that contains Region, Account, State, ResourceType, + // MessageCategory, StartTime, EndTime, and Count of included jobs. + RestoreJobSummaries []*RestoreJobSummary `type:"list"` } // String returns the string representation. @@ -16954,7 +20760,7 @@ type ListCopyJobsOutput 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 ListCopyJobsOutput) String() string { +func (s ListRestoreJobSummariesOutput) String() string { return awsutil.Prettify(s) } @@ -16963,32 +20769,56 @@ func (s ListCopyJobsOutput) 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 ListCopyJobsOutput) GoString() string { +func (s ListRestoreJobSummariesOutput) GoString() string { return s.String() } -// SetCopyJobs sets the CopyJobs field's value. -func (s *ListCopyJobsOutput) SetCopyJobs(v []*CopyJob) *ListCopyJobsOutput { - s.CopyJobs = v +// SetAggregationPeriod sets the AggregationPeriod field's value. +func (s *ListRestoreJobSummariesOutput) SetAggregationPeriod(v string) *ListRestoreJobSummariesOutput { + s.AggregationPeriod = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListCopyJobsOutput) SetNextToken(v string) *ListCopyJobsOutput { +func (s *ListRestoreJobSummariesOutput) SetNextToken(v string) *ListRestoreJobSummariesOutput { s.NextToken = &v return s } -type ListFrameworksInput struct { +// SetRestoreJobSummaries sets the RestoreJobSummaries field's value. +func (s *ListRestoreJobSummariesOutput) SetRestoreJobSummaries(v []*RestoreJobSummary) *ListRestoreJobSummariesOutput { + s.RestoreJobSummaries = v + return s +} + +type ListRestoreJobsByProtectedResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The number of desired results from 1 to 1000. Optional. If unspecified, the - // query will return 1 MB of data. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + // Returns only restore jobs of recovery points that were created after the + // specified date. + ByRecoveryPointCreationDateAfter *time.Time `location:"querystring" locationName:"recoveryPointCreationDateAfter" type:"timestamp"` - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + // Returns only restore jobs of recovery points that were created before the + // specified date. + ByRecoveryPointCreationDateBefore *time.Time `location:"querystring" locationName:"recoveryPointCreationDateBefore" type:"timestamp"` + + // Returns only restore jobs associated with the specified job status. + ByStatus *string `location:"querystring" locationName:"status" type:"string" enum:"RestoreJobStatus"` + + // The maximum number of items to be returned. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The next item following a partial list of returned items. For example, if + // a request ismade to return MaxResults number of items, NextToken allows you + // to return more items in your list starting at the location pointed to by + // the next token. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // Returns only restore jobs that match the specified resource Amazon Resource + // Name (ARN). + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` } // String returns the string representation. @@ -16996,7 +20826,7 @@ type ListFrameworksInput 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 ListFrameworksInput) String() string { +func (s ListRestoreJobsByProtectedResourceInput) String() string { return awsutil.Prettify(s) } @@ -17005,16 +20835,22 @@ func (s ListFrameworksInput) 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 ListFrameworksInput) GoString() string { +func (s ListRestoreJobsByProtectedResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListFrameworksInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListFrameworksInput"} +func (s *ListRestoreJobsByProtectedResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobsByProtectedResourceInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -17022,29 +20858,54 @@ func (s *ListFrameworksInput) Validate() error { return nil } +// SetByRecoveryPointCreationDateAfter sets the ByRecoveryPointCreationDateAfter field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByRecoveryPointCreationDateAfter(v time.Time) *ListRestoreJobsByProtectedResourceInput { + s.ByRecoveryPointCreationDateAfter = &v + return s +} + +// SetByRecoveryPointCreationDateBefore sets the ByRecoveryPointCreationDateBefore field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByRecoveryPointCreationDateBefore(v time.Time) *ListRestoreJobsByProtectedResourceInput { + s.ByRecoveryPointCreationDateBefore = &v + return s +} + +// SetByStatus sets the ByStatus field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetByStatus(v string) *ListRestoreJobsByProtectedResourceInput { + s.ByStatus = &v + return s +} + // SetMaxResults sets the MaxResults field's value. -func (s *ListFrameworksInput) SetMaxResults(v int64) *ListFrameworksInput { +func (s *ListRestoreJobsByProtectedResourceInput) SetMaxResults(v int64) *ListRestoreJobsByProtectedResourceInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListFrameworksInput) SetNextToken(v string) *ListFrameworksInput { +func (s *ListRestoreJobsByProtectedResourceInput) SetNextToken(v string) *ListRestoreJobsByProtectedResourceInput { s.NextToken = &v return s } -type ListFrameworksOutput struct { - _ struct{} `type:"structure"` +// SetResourceArn sets the ResourceArn field's value. +func (s *ListRestoreJobsByProtectedResourceInput) SetResourceArn(v string) *ListRestoreJobsByProtectedResourceInput { + s.ResourceArn = &v + return s +} - // A list of frameworks with details for each framework, including the framework - // name, Amazon Resource Name (ARN), description, number of controls, creation - // time, and deployment status. - Frameworks []*Framework `type:"list"` +type ListRestoreJobsByProtectedResourceOutput struct { + _ struct{} `type:"structure"` - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // youto return more items in your list starting at the location pointed to + // by the next token NextToken *string `type:"string"` + + // An array of objects that contain detailed information about jobs to restore + // saved resources.> + RestoreJobs []*RestoreJobsListMember `type:"list"` } // String returns the string representation. @@ -17052,7 +20913,7 @@ type ListFrameworksOutput 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 ListFrameworksOutput) String() string { +func (s ListRestoreJobsByProtectedResourceOutput) String() string { return awsutil.Prettify(s) } @@ -17061,32 +20922,57 @@ func (s ListFrameworksOutput) 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 ListFrameworksOutput) GoString() string { +func (s ListRestoreJobsByProtectedResourceOutput) GoString() string { return s.String() } -// SetFrameworks sets the Frameworks field's value. -func (s *ListFrameworksOutput) SetFrameworks(v []*Framework) *ListFrameworksOutput { - s.Frameworks = v +// SetNextToken sets the NextToken field's value. +func (s *ListRestoreJobsByProtectedResourceOutput) SetNextToken(v string) *ListRestoreJobsByProtectedResourceOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListFrameworksOutput) SetNextToken(v string) *ListFrameworksOutput { - s.NextToken = &v +// SetRestoreJobs sets the RestoreJobs field's value. +func (s *ListRestoreJobsByProtectedResourceOutput) SetRestoreJobs(v []*RestoreJobsListMember) *ListRestoreJobsByProtectedResourceOutput { + s.RestoreJobs = v return s } -type ListLegalHoldsInput struct { +type ListRestoreJobsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The maximum number of resource list items to be returned. + // The account ID to list the jobs from. Returns only restore jobs associated + // with the specified account ID. + ByAccountId *string `location:"querystring" locationName:"accountId" type:"string"` + + // Returns only copy jobs completed after a date expressed in Unix format and + // Coordinated Universal Time (UTC). + ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` + + // Returns only copy jobs completed before a date expressed in Unix format and + // Coordinated Universal Time (UTC). + ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` + + // Returns only restore jobs that were created after the specified date. + ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` + + // Returns only restore jobs that were created before the specified date. + ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` + + // This returns only restore testing jobs that match the specified resource + // Amazon Resource Name (ARN). + ByRestoreTestingPlanArn *string `location:"querystring" locationName:"restoreTestingPlanArn" type:"string"` + + // Returns only restore jobs associated with the specified job status. + ByStatus *string `location:"querystring" locationName:"status" type:"string" enum:"RestoreJobStatus"` + + // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } @@ -17095,7 +20981,7 @@ type ListLegalHoldsInput 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 ListLegalHoldsInput) String() string { +func (s ListRestoreJobsInput) String() string { return awsutil.Prettify(s) } @@ -17104,13 +20990,13 @@ func (s ListLegalHoldsInput) 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 ListLegalHoldsInput) GoString() string { +func (s ListRestoreJobsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLegalHoldsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLegalHoldsInput"} +func (s *ListRestoreJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -17121,29 +21007,72 @@ func (s *ListLegalHoldsInput) Validate() error { return nil } +// SetByAccountId sets the ByAccountId field's value. +func (s *ListRestoreJobsInput) SetByAccountId(v string) *ListRestoreJobsInput { + s.ByAccountId = &v + return s +} + +// SetByCompleteAfter sets the ByCompleteAfter field's value. +func (s *ListRestoreJobsInput) SetByCompleteAfter(v time.Time) *ListRestoreJobsInput { + s.ByCompleteAfter = &v + return s +} + +// SetByCompleteBefore sets the ByCompleteBefore field's value. +func (s *ListRestoreJobsInput) SetByCompleteBefore(v time.Time) *ListRestoreJobsInput { + s.ByCompleteBefore = &v + return s +} + +// SetByCreatedAfter sets the ByCreatedAfter field's value. +func (s *ListRestoreJobsInput) SetByCreatedAfter(v time.Time) *ListRestoreJobsInput { + s.ByCreatedAfter = &v + return s +} + +// SetByCreatedBefore sets the ByCreatedBefore field's value. +func (s *ListRestoreJobsInput) SetByCreatedBefore(v time.Time) *ListRestoreJobsInput { + s.ByCreatedBefore = &v + return s +} + +// SetByRestoreTestingPlanArn sets the ByRestoreTestingPlanArn field's value. +func (s *ListRestoreJobsInput) SetByRestoreTestingPlanArn(v string) *ListRestoreJobsInput { + s.ByRestoreTestingPlanArn = &v + return s +} + +// SetByStatus sets the ByStatus field's value. +func (s *ListRestoreJobsInput) SetByStatus(v string) *ListRestoreJobsInput { + s.ByStatus = &v + return s +} + // SetMaxResults sets the MaxResults field's value. -func (s *ListLegalHoldsInput) SetMaxResults(v int64) *ListLegalHoldsInput { +func (s *ListRestoreJobsInput) SetMaxResults(v int64) *ListRestoreJobsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLegalHoldsInput) SetNextToken(v string) *ListLegalHoldsInput { +func (s *ListRestoreJobsInput) SetNextToken(v string) *ListRestoreJobsInput { s.NextToken = &v return s } -type ListLegalHoldsOutput struct { +type ListRestoreJobsOutput struct { _ struct{} `type:"structure"` - // This is an array of returned legal holds, both active and previous. - LegalHolds []*LegalHold `type:"list"` - - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. + // The next item following a partial list of returned items. For example, if + // a request is made to return MaxResults number of items, NextToken allows + // you to return more items in your list starting at the location pointed to + // by the next token. NextToken *string `type:"string"` + + // An array of objects that contain detailed information about jobs to restore + // saved resources. + RestoreJobs []*RestoreJobsListMember `type:"list"` } // String returns the string representation. @@ -17151,7 +21080,7 @@ type ListLegalHoldsOutput 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 ListLegalHoldsOutput) String() string { +func (s ListRestoreJobsOutput) String() string { return awsutil.Prettify(s) } @@ -17160,43 +21089,33 @@ func (s ListLegalHoldsOutput) 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 ListLegalHoldsOutput) GoString() string { +func (s ListRestoreJobsOutput) GoString() string { return s.String() } -// SetLegalHolds sets the LegalHolds field's value. -func (s *ListLegalHoldsOutput) SetLegalHolds(v []*LegalHold) *ListLegalHoldsOutput { - s.LegalHolds = v - return s -} - // SetNextToken sets the NextToken field's value. -func (s *ListLegalHoldsOutput) SetNextToken(v string) *ListLegalHoldsOutput { +func (s *ListRestoreJobsOutput) SetNextToken(v string) *ListRestoreJobsOutput { s.NextToken = &v return s } -type ListProtectedResourcesByBackupVaultInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // This is the list of protected resources by backup vault within the vault(s) - // you specify by account ID. - BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` +// SetRestoreJobs sets the RestoreJobs field's value. +func (s *ListRestoreJobsOutput) SetRestoreJobs(v []*RestoreJobsListMember) *ListRestoreJobsOutput { + s.RestoreJobs = v + return s +} - // This is the list of protected resources by backup vault within the vault(s) - // you specify by name. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` +type ListRestoreTestingPlansInput struct { + _ struct{} `type:"structure" nopayload:"true"` // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // by the nexttoken. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` } // String returns the string representation. @@ -17204,7 +21123,7 @@ type ListProtectedResourcesByBackupVaultInput 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 ListProtectedResourcesByBackupVaultInput) String() string { +func (s ListRestoreTestingPlansInput) String() string { return awsutil.Prettify(s) } @@ -17213,19 +21132,13 @@ func (s ListProtectedResourcesByBackupVaultInput) 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 ListProtectedResourcesByBackupVaultInput) GoString() string { +func (s ListRestoreTestingPlansInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListProtectedResourcesByBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListProtectedResourcesByBackupVaultInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } +func (s *ListRestoreTestingPlansInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreTestingPlansInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } @@ -17236,41 +21149,31 @@ func (s *ListProtectedResourcesByBackupVaultInput) Validate() error { return nil } -// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. -func (s *ListProtectedResourcesByBackupVaultInput) SetBackupVaultAccountId(v string) *ListProtectedResourcesByBackupVaultInput { - s.BackupVaultAccountId = &v - return s -} - -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *ListProtectedResourcesByBackupVaultInput) SetBackupVaultName(v string) *ListProtectedResourcesByBackupVaultInput { - s.BackupVaultName = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListProtectedResourcesByBackupVaultInput) SetMaxResults(v int64) *ListProtectedResourcesByBackupVaultInput { +func (s *ListRestoreTestingPlansInput) SetMaxResults(v int64) *ListRestoreTestingPlansInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListProtectedResourcesByBackupVaultInput) SetNextToken(v string) *ListProtectedResourcesByBackupVaultInput { +func (s *ListRestoreTestingPlansInput) SetNextToken(v string) *ListRestoreTestingPlansInput { s.NextToken = &v return s } -type ListProtectedResourcesByBackupVaultOutput struct { +type ListRestoreTestingPlansOutput struct { _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to - // by the next token. + // by the nexttoken. NextToken *string `type:"string"` - // These are the results returned for the request ListProtectedResourcesByBackupVault. - Results []*ProtectedResource `type:"list"` + // This is a returned list of restore testing plans. + // + // RestoreTestingPlans is a required field + RestoreTestingPlans []*RestoreTestingPlanForList `type:"list" required:"true"` } // String returns the string representation. @@ -17278,7 +21181,7 @@ type ListProtectedResourcesByBackupVaultOutput 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 ListProtectedResourcesByBackupVaultOutput) String() string { +func (s ListRestoreTestingPlansOutput) String() string { return awsutil.Prettify(s) } @@ -17287,33 +21190,39 @@ func (s ListProtectedResourcesByBackupVaultOutput) 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 ListProtectedResourcesByBackupVaultOutput) GoString() string { +func (s ListRestoreTestingPlansOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. -func (s *ListProtectedResourcesByBackupVaultOutput) SetNextToken(v string) *ListProtectedResourcesByBackupVaultOutput { +func (s *ListRestoreTestingPlansOutput) SetNextToken(v string) *ListRestoreTestingPlansOutput { s.NextToken = &v return s } -// SetResults sets the Results field's value. -func (s *ListProtectedResourcesByBackupVaultOutput) SetResults(v []*ProtectedResource) *ListProtectedResourcesByBackupVaultOutput { - s.Results = v +// SetRestoreTestingPlans sets the RestoreTestingPlans field's value. +func (s *ListRestoreTestingPlansOutput) SetRestoreTestingPlans(v []*RestoreTestingPlanForList) *ListRestoreTestingPlansOutput { + s.RestoreTestingPlans = v return s } -type ListProtectedResourcesInput struct { +type ListRestoreTestingSelectionsInput struct { _ struct{} `type:"structure" nopayload:"true"` // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // by the nexttoken. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + + // Returns restore testing selections by the specified restore testing plan + // name. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` } // String returns the string representation. @@ -17321,7 +21230,7 @@ type ListProtectedResourcesInput 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 ListProtectedResourcesInput) String() string { +func (s ListRestoreTestingSelectionsInput) String() string { return awsutil.Prettify(s) } @@ -17330,16 +21239,22 @@ func (s ListProtectedResourcesInput) 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 ListProtectedResourcesInput) GoString() string { +func (s ListRestoreTestingSelectionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListProtectedResourcesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListProtectedResourcesInput"} +func (s *ListRestoreTestingSelectionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRestoreTestingSelectionsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -17348,30 +21263,37 @@ func (s *ListProtectedResourcesInput) Validate() error { } // SetMaxResults sets the MaxResults field's value. -func (s *ListProtectedResourcesInput) SetMaxResults(v int64) *ListProtectedResourcesInput { +func (s *ListRestoreTestingSelectionsInput) SetMaxResults(v int64) *ListRestoreTestingSelectionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListProtectedResourcesInput) SetNextToken(v string) *ListProtectedResourcesInput { +func (s *ListRestoreTestingSelectionsInput) SetNextToken(v string) *ListRestoreTestingSelectionsInput { s.NextToken = &v return s } -type ListProtectedResourcesOutput struct { +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *ListRestoreTestingSelectionsInput) SetRestoreTestingPlanName(v string) *ListRestoreTestingSelectionsInput { + s.RestoreTestingPlanName = &v + return s +} + +type ListRestoreTestingSelectionsOutput struct { _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to - // by the next token. + // by the nexttoken. NextToken *string `type:"string"` - // An array of resources successfully backed up by Backup including the time - // the resource was saved, an Amazon Resource Name (ARN) of the resource, and - // a resource type. - Results []*ProtectedResource `type:"list"` + // The returned restore testing selections associated with the restore testing + // plan. + // + // RestoreTestingSelections is a required field + RestoreTestingSelections []*RestoreTestingSelectionForList `type:"list" required:"true"` } // String returns the string representation. @@ -17379,7 +21301,7 @@ type ListProtectedResourcesOutput 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 ListProtectedResourcesOutput) String() string { +func (s ListRestoreTestingSelectionsOutput) String() string { return awsutil.Prettify(s) } @@ -17388,67 +21310,40 @@ func (s ListProtectedResourcesOutput) 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 ListProtectedResourcesOutput) GoString() string { +func (s ListRestoreTestingSelectionsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. -func (s *ListProtectedResourcesOutput) SetNextToken(v string) *ListProtectedResourcesOutput { +func (s *ListRestoreTestingSelectionsOutput) SetNextToken(v string) *ListRestoreTestingSelectionsOutput { s.NextToken = &v return s } -// SetResults sets the Results field's value. -func (s *ListProtectedResourcesOutput) SetResults(v []*ProtectedResource) *ListProtectedResourcesOutput { - s.Results = v +// SetRestoreTestingSelections sets the RestoreTestingSelections field's value. +func (s *ListRestoreTestingSelectionsOutput) SetRestoreTestingSelections(v []*RestoreTestingSelectionForList) *ListRestoreTestingSelectionsOutput { + s.RestoreTestingSelections = v return s } -type ListRecoveryPointsByBackupVaultInput struct { +type ListTagsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // This parameter will sort the list of recovery points by account ID. - BackupVaultAccountId *string `location:"querystring" locationName:"backupVaultAccountId" type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - // - // Backup vault name might not be available when a supported service creates - // the backup. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - - // Returns only recovery points that match the specified backup plan ID. - ByBackupPlanId *string `location:"querystring" locationName:"backupPlanId" type:"string"` - - // Returns only recovery points that were created after the specified timestamp. - ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` - - // Returns only recovery points that were created before the specified timestamp. - ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` - - // This returns only recovery points that match the specified parent (composite) - // recovery point Amazon Resource Name (ARN). - ByParentRecoveryPointArn *string `location:"querystring" locationName:"parentRecoveryPointArn" type:"string"` - - // Returns only recovery points that match the specified resource Amazon Resource - // Name (ARN). - ByResourceArn *string `location:"querystring" locationName:"resourceArn" type:"string"` - - // Returns only recovery points that match the specified resource type. - ByResourceType *string `location:"querystring" locationName:"resourceType" type:"string"` - // The maximum number of items to be returned. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the type of resource. Valid targets for ListTags are + // recovery points, backup plans, and backup vaults. + // + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` } // String returns the string representation. @@ -17456,7 +21351,7 @@ type ListRecoveryPointsByBackupVaultInput 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 ListRecoveryPointsByBackupVaultInput) String() string { +func (s ListTagsInput) String() string { return awsutil.Prettify(s) } @@ -17465,22 +21360,22 @@ func (s ListRecoveryPointsByBackupVaultInput) 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 ListRecoveryPointsByBackupVaultInput) GoString() string { +func (s ListTagsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListRecoveryPointsByBackupVaultInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByBackupVaultInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } +func (s *ListTagsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"} if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -17488,78 +21383,40 @@ func (s *ListRecoveryPointsByBackupVaultInput) Validate() error { return nil } -// SetBackupVaultAccountId sets the BackupVaultAccountId field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetBackupVaultAccountId(v string) *ListRecoveryPointsByBackupVaultInput { - s.BackupVaultAccountId = &v - return s -} - -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetBackupVaultName(v string) *ListRecoveryPointsByBackupVaultInput { - s.BackupVaultName = &v - return s -} - -// SetByBackupPlanId sets the ByBackupPlanId field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByBackupPlanId(v string) *ListRecoveryPointsByBackupVaultInput { - s.ByBackupPlanId = &v - return s -} - -// SetByCreatedAfter sets the ByCreatedAfter field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByCreatedAfter(v time.Time) *ListRecoveryPointsByBackupVaultInput { - s.ByCreatedAfter = &v - return s -} - -// SetByCreatedBefore sets the ByCreatedBefore field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByCreatedBefore(v time.Time) *ListRecoveryPointsByBackupVaultInput { - s.ByCreatedBefore = &v - return s -} - -// SetByParentRecoveryPointArn sets the ByParentRecoveryPointArn field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByParentRecoveryPointArn(v string) *ListRecoveryPointsByBackupVaultInput { - s.ByParentRecoveryPointArn = &v - return s -} - -// SetByResourceArn sets the ByResourceArn field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByResourceArn(v string) *ListRecoveryPointsByBackupVaultInput { - s.ByResourceArn = &v - return s -} - -// SetByResourceType sets the ByResourceType field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetByResourceType(v string) *ListRecoveryPointsByBackupVaultInput { - s.ByResourceType = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetMaxResults(v int64) *ListRecoveryPointsByBackupVaultInput { +func (s *ListTagsInput) SetMaxResults(v int64) *ListTagsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByBackupVaultInput) SetNextToken(v string) *ListRecoveryPointsByBackupVaultInput { +func (s *ListTagsInput) SetNextToken(v string) *ListTagsInput { s.NextToken = &v return s } -type ListRecoveryPointsByBackupVaultOutput struct { +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsInput) SetResourceArn(v string) *ListTagsInput { + s.ResourceArn = &v + return s +} + +type ListTagsOutput struct { _ struct{} `type:"structure"` // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows + // a request is made to return MaxResults number of items, NextToken allows // you to return more items in your list starting at the location pointed to // by the next token. NextToken *string `type:"string"` - // An array of objects that contain detailed information about recovery points - // saved in a backup vault. - RecoveryPoints []*RecoveryPointByBackupVault `type:"list"` + // To help organize your resources, you can assign your own metadata to the + // resources you create. Each tag is a key-value pair. + // + // Tags is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ListTagsOutput's + // String and GoString methods. + Tags map[string]*string `type:"map" sensitive:"true"` } // String returns the string representation. @@ -17567,7 +21424,7 @@ type ListRecoveryPointsByBackupVaultOutput 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 ListRecoveryPointsByBackupVaultOutput) String() string { +func (s ListTagsOutput) String() string { return awsutil.Prettify(s) } @@ -17576,38 +21433,34 @@ func (s ListRecoveryPointsByBackupVaultOutput) 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 ListRecoveryPointsByBackupVaultOutput) GoString() string { +func (s ListTagsOutput) GoString() string { return s.String() } // SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByBackupVaultOutput) SetNextToken(v string) *ListRecoveryPointsByBackupVaultOutput { +func (s *ListTagsOutput) SetNextToken(v string) *ListTagsOutput { s.NextToken = &v return s } -// SetRecoveryPoints sets the RecoveryPoints field's value. -func (s *ListRecoveryPointsByBackupVaultOutput) SetRecoveryPoints(v []*RecoveryPointByBackupVault) *ListRecoveryPointsByBackupVaultOutput { - s.RecoveryPoints = v +// SetTags sets the Tags field's value. +func (s *ListTagsOutput) SetTags(v map[string]*string) *ListTagsOutput { + s.Tags = v return s } -type ListRecoveryPointsByLegalHoldInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Indicates that a required parameter is missing. +type MissingParameterValueException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // This is the ID of the legal hold. - // - // LegalHoldId is a required field - LegalHoldId *string `location:"uri" locationName:"legalHoldId" type:"string" required:"true"` + Code_ *string `locationName:"Code" type:"string"` - // This is the maximum number of resource list items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + Context *string `type:"string"` - // This is the next item following a partial list of returned resources. For - // example, if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + Message_ *string `locationName:"Message" type:"string"` + + Type *string `type:"string"` } // String returns the string representation. @@ -17615,7 +21468,7 @@ type ListRecoveryPointsByLegalHoldInput 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 ListRecoveryPointsByLegalHoldInput) String() string { +func (s MissingParameterValueException) String() string { return awsutil.Prettify(s) } @@ -17624,55 +21477,69 @@ func (s ListRecoveryPointsByLegalHoldInput) 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 ListRecoveryPointsByLegalHoldInput) GoString() string { +func (s MissingParameterValueException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListRecoveryPointsByLegalHoldInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByLegalHoldInput"} - if s.LegalHoldId == nil { - invalidParams.Add(request.NewErrParamRequired("LegalHoldId")) - } - if s.LegalHoldId != nil && len(*s.LegalHoldId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("LegalHoldId", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } +func newErrorMissingParameterValueException(v protocol.ResponseMetadata) error { + return &MissingParameterValueException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *MissingParameterValueException) Code() string { + return "MissingParameterValueException" +} - if invalidParams.Len() > 0 { - return invalidParams +// Message returns the exception's message. +func (s *MissingParameterValueException) Message() string { + if s.Message_ != nil { + return *s.Message_ } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *MissingParameterValueException) OrigErr() error { return nil } -// SetLegalHoldId sets the LegalHoldId field's value. -func (s *ListRecoveryPointsByLegalHoldInput) SetLegalHoldId(v string) *ListRecoveryPointsByLegalHoldInput { - s.LegalHoldId = &v - return s +func (s *MissingParameterValueException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } -// SetMaxResults sets the MaxResults field's value. -func (s *ListRecoveryPointsByLegalHoldInput) SetMaxResults(v int64) *ListRecoveryPointsByLegalHoldInput { - s.MaxResults = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *MissingParameterValueException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByLegalHoldInput) SetNextToken(v string) *ListRecoveryPointsByLegalHoldInput { - s.NextToken = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *MissingParameterValueException) RequestID() string { + return s.RespMetadata.RequestID } -type ListRecoveryPointsByLegalHoldOutput struct { +// Contains an optional backup plan display name and an array of BackupRule +// objects, each of which specifies a backup rule. Each rule in a backup plan +// is a separate scheduled task and can back up a different selection of Amazon +// Web Services resources. +type Plan struct { _ struct{} `type:"structure"` - // This return is the next item following a partial list of returned resources. - NextToken *string `type:"string"` + // Contains a list of BackupOptions for each resource type. + AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` - // This is a list of the recovery points returned by ListRecoveryPointsByLegalHold. - RecoveryPoints []*RecoveryPointMember `type:"list"` + // The display name of a backup plan. Must contain 1 to 50 alphanumeric or '-_.' + // characters. + // + // BackupPlanName is a required field + BackupPlanName *string `type:"string" required:"true"` + + // An array of BackupRule objects, each of which specifies a scheduled task + // that is used to back up a selection of resources. + // + // Rules is a required field + Rules []*Rule `type:"list" required:"true"` } // String returns the string representation. @@ -17680,7 +21547,7 @@ type ListRecoveryPointsByLegalHoldOutput 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 ListRecoveryPointsByLegalHoldOutput) String() string { +func (s Plan) String() string { return awsutil.Prettify(s) } @@ -17689,41 +21556,49 @@ func (s ListRecoveryPointsByLegalHoldOutput) 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 ListRecoveryPointsByLegalHoldOutput) GoString() string { +func (s Plan) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByLegalHoldOutput) SetNextToken(v string) *ListRecoveryPointsByLegalHoldOutput { - s.NextToken = &v +// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. +func (s *Plan) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *Plan { + s.AdvancedBackupSettings = v return s } -// SetRecoveryPoints sets the RecoveryPoints field's value. -func (s *ListRecoveryPointsByLegalHoldOutput) SetRecoveryPoints(v []*RecoveryPointMember) *ListRecoveryPointsByLegalHoldOutput { - s.RecoveryPoints = v +// SetBackupPlanName sets the BackupPlanName field's value. +func (s *Plan) SetBackupPlanName(v string) *Plan { + s.BackupPlanName = &v return s } -type ListRecoveryPointsByResourceInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetRules sets the Rules field's value. +func (s *Plan) SetRules(v []*Rule) *Plan { + s.Rules = v + return s +} - // The maximum number of items to be returned. - // - // Amazon RDS requires a value of at least 20. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` +// Contains an optional backup plan display name and an array of BackupRule +// objects, each of which specifies a backup rule. Each rule in a backup plan +// is a separate scheduled task. +type PlanInput struct { + _ struct{} `type:"structure"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // Specifies a list of BackupOptions for each resource type. These settings + // are only available for Windows Volume Shadow Copy Service (VSS) backup jobs. + AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` - // An ARN that uniquely identifies a resource. The format of the ARN depends - // on the resource type. + // The display name of a backup plan. Must contain 1 to 50 alphanumeric or '-_.' + // characters. // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + // BackupPlanName is a required field + BackupPlanName *string `type:"string" required:"true"` + + // An array of BackupRule objects, each of which specifies a scheduled task + // that is used to back up a selection of resources. + // + // Rules is a required field + Rules []*RuleInput `type:"list" required:"true"` } // String returns the string representation. @@ -17731,7 +21606,7 @@ type ListRecoveryPointsByResourceInput 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 ListRecoveryPointsByResourceInput) String() string { +func (s PlanInput) String() string { return awsutil.Prettify(s) } @@ -17740,21 +21615,28 @@ func (s ListRecoveryPointsByResourceInput) 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 ListRecoveryPointsByResourceInput) GoString() string { +func (s PlanInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListRecoveryPointsByResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsByResourceInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *PlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PlanInput"} + if s.BackupPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupPlanName")) } - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + if s.Rules == nil { + invalidParams.Add(request.NewErrParamRequired("Rules")) } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + if s.Rules != nil { + for i, v := range s.Rules { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -17763,38 +21645,33 @@ func (s *ListRecoveryPointsByResourceInput) Validate() error { return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *ListRecoveryPointsByResourceInput) SetMaxResults(v int64) *ListRecoveryPointsByResourceInput { - s.MaxResults = &v +// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. +func (s *PlanInput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *PlanInput { + s.AdvancedBackupSettings = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByResourceInput) SetNextToken(v string) *ListRecoveryPointsByResourceInput { - s.NextToken = &v +// SetBackupPlanName sets the BackupPlanName field's value. +func (s *PlanInput) SetBackupPlanName(v string) *PlanInput { + s.BackupPlanName = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *ListRecoveryPointsByResourceInput) SetResourceArn(v string) *ListRecoveryPointsByResourceInput { - s.ResourceArn = &v +// SetRules sets the Rules field's value. +func (s *PlanInput) SetRules(v []*RuleInput) *PlanInput { + s.Rules = v return s } -type ListRecoveryPointsByResourceOutput struct { +// An object specifying metadata associated with a backup plan template. +type PlanTemplatesListMember struct { _ struct{} `type:"structure"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `type:"string"` + // Uniquely identifies a stored backup plan template. + BackupPlanTemplateId *string `type:"string"` - // An array of objects that contain detailed information about recovery points - // of the specified resource type. - // - // Only Amazon EFS and Amazon EC2 recovery points return BackupVaultName. - RecoveryPoints []*RecoveryPointByResource `type:"list"` + // The optional display name of a backup plan template. + BackupPlanTemplateName *string `type:"string"` } // String returns the string representation. @@ -17802,7 +21679,7 @@ type ListRecoveryPointsByResourceOutput 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 ListRecoveryPointsByResourceOutput) String() string { +func (s PlanTemplatesListMember) String() string { return awsutil.Prettify(s) } @@ -17811,50 +21688,67 @@ func (s ListRecoveryPointsByResourceOutput) 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 ListRecoveryPointsByResourceOutput) GoString() string { +func (s PlanTemplatesListMember) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListRecoveryPointsByResourceOutput) SetNextToken(v string) *ListRecoveryPointsByResourceOutput { - s.NextToken = &v +// SetBackupPlanTemplateId sets the BackupPlanTemplateId field's value. +func (s *PlanTemplatesListMember) SetBackupPlanTemplateId(v string) *PlanTemplatesListMember { + s.BackupPlanTemplateId = &v return s } -// SetRecoveryPoints sets the RecoveryPoints field's value. -func (s *ListRecoveryPointsByResourceOutput) SetRecoveryPoints(v []*RecoveryPointByResource) *ListRecoveryPointsByResourceOutput { - s.RecoveryPoints = v +// SetBackupPlanTemplateName sets the BackupPlanTemplateName field's value. +func (s *PlanTemplatesListMember) SetBackupPlanTemplateName(v string) *PlanTemplatesListMember { + s.BackupPlanTemplateName = &v return s } -type ListReportJobsInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// Contains metadata about a backup plan. +type PlansListMember struct { + _ struct{} `type:"structure"` - // Returns only report jobs that were created after the date and time specified - // in Unix format and Coordinated Universal Time (UTC). For example, the value - // 1516925490 represents Friday, January 26, 2018 12:11:30 AM. - ByCreationAfter *time.Time `location:"querystring" locationName:"CreationAfter" type:"timestamp"` + // Contains a list of BackupOptions for a resource type. + AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` - // Returns only report jobs that were created before the date and time specified - // in Unix format and Coordinated Universal Time (UTC). For example, the value - // 1516925490 represents Friday, January 26, 2018 12:11:30 AM. - ByCreationBefore *time.Time `location:"querystring" locationName:"CreationBefore" type:"timestamp"` + // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for + // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. + BackupPlanArn *string `type:"string"` - // Returns only report jobs with the specified report plan name. - ByReportPlanName *string `location:"querystring" locationName:"ReportPlanName" min:"1" type:"string"` + // Uniquely identifies a backup plan. + BackupPlanId *string `type:"string"` - // Returns only report jobs that are in the specified status. The statuses are: + // The display name of a saved backup plan. + BackupPlanName *string `type:"string"` + + // The date and time a resource backup plan is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // A unique string that identifies the request and allows failed requests to + // be retried without the risk of running the operation twice. This parameter + // is optional. // - // CREATED | RUNNING | COMPLETED | FAILED - ByStatus *string `location:"querystring" locationName:"Status" type:"string"` + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` - // The number of desired results from 1 to 1000. Optional. If unspecified, the - // query will return 1 MB of data. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + // The date and time a backup plan is deleted, in Unix format and Coordinated + // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + DeletionDate *time.Time `type:"timestamp"` - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + // The last time a job to back up resources was run with this rule. A date and + // time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionDate *time.Time `type:"timestamp"` + + // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most + // 1,024 bytes long. Version IDs cannot be edited. + VersionId *string `type:"string"` } // String returns the string representation. @@ -17862,7 +21756,7 @@ type ListReportJobsInput 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 ListReportJobsInput) String() string { +func (s PlansListMember) String() string { return awsutil.Prettify(s) } @@ -17871,71 +21765,94 @@ func (s ListReportJobsInput) 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 ListReportJobsInput) GoString() string { +func (s PlansListMember) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListReportJobsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListReportJobsInput"} - if s.ByReportPlanName != nil && len(*s.ByReportPlanName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ByReportPlanName", 1)) - } - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) - } +// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. +func (s *PlansListMember) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *PlansListMember { + s.AdvancedBackupSettings = v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetBackupPlanArn sets the BackupPlanArn field's value. +func (s *PlansListMember) SetBackupPlanArn(v string) *PlansListMember { + s.BackupPlanArn = &v + return s } -// SetByCreationAfter sets the ByCreationAfter field's value. -func (s *ListReportJobsInput) SetByCreationAfter(v time.Time) *ListReportJobsInput { - s.ByCreationAfter = &v +// SetBackupPlanId sets the BackupPlanId field's value. +func (s *PlansListMember) SetBackupPlanId(v string) *PlansListMember { + s.BackupPlanId = &v return s } -// SetByCreationBefore sets the ByCreationBefore field's value. -func (s *ListReportJobsInput) SetByCreationBefore(v time.Time) *ListReportJobsInput { - s.ByCreationBefore = &v +// SetBackupPlanName sets the BackupPlanName field's value. +func (s *PlansListMember) SetBackupPlanName(v string) *PlansListMember { + s.BackupPlanName = &v return s } -// SetByReportPlanName sets the ByReportPlanName field's value. -func (s *ListReportJobsInput) SetByReportPlanName(v string) *ListReportJobsInput { - s.ByReportPlanName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *PlansListMember) SetCreationDate(v time.Time) *PlansListMember { + s.CreationDate = &v return s } -// SetByStatus sets the ByStatus field's value. -func (s *ListReportJobsInput) SetByStatus(v string) *ListReportJobsInput { - s.ByStatus = &v +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *PlansListMember) SetCreatorRequestId(v string) *PlansListMember { + s.CreatorRequestId = &v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListReportJobsInput) SetMaxResults(v int64) *ListReportJobsInput { - s.MaxResults = &v +// SetDeletionDate sets the DeletionDate field's value. +func (s *PlansListMember) SetDeletionDate(v time.Time) *PlansListMember { + s.DeletionDate = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListReportJobsInput) SetNextToken(v string) *ListReportJobsInput { - s.NextToken = &v +// SetLastExecutionDate sets the LastExecutionDate field's value. +func (s *PlansListMember) SetLastExecutionDate(v time.Time) *PlansListMember { + s.LastExecutionDate = &v return s } -type ListReportJobsOutput struct { +// SetVersionId sets the VersionId field's value. +func (s *PlansListMember) SetVersionId(v string) *PlansListMember { + s.VersionId = &v + return s +} + +// A structure that contains information about a backed-up resource. +type ProtectedResource struct { _ struct{} `type:"structure"` - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. - NextToken *string `type:"string"` + // The date and time a resource was last backed up, in Unix format and Coordinated + // Universal Time (UTC). The value of LastBackupTime is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + LastBackupTime *time.Time `type:"timestamp"` - // Details about your report jobs in JSON format. - ReportJobs []*ReportJob `type:"list"` + // This is the ARN (Amazon Resource Name) of the backup vault that contains + // the most recent backup recovery point. + LastBackupVaultArn *string `type:"string"` + + // This is the ARN (Amazon Resource Name) of the most recent recovery point. + LastRecoveryPointArn *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + ResourceArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // The type of Amazon Web Services resource; for example, an Amazon Elastic + // Block Store (Amazon EBS) volume or an Amazon Relational Database Service + // (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, + // the only supported resource type is Amazon EC2. + ResourceType *string `type:"string"` } // String returns the string representation. @@ -17943,7 +21860,7 @@ type ListReportJobsOutput 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 ListReportJobsOutput) String() string { +func (s ProtectedResource) String() string { return awsutil.Prettify(s) } @@ -17952,32 +21869,61 @@ func (s ListReportJobsOutput) 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 ListReportJobsOutput) GoString() string { +func (s ProtectedResource) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListReportJobsOutput) SetNextToken(v string) *ListReportJobsOutput { - s.NextToken = &v +// SetLastBackupTime sets the LastBackupTime field's value. +func (s *ProtectedResource) SetLastBackupTime(v time.Time) *ProtectedResource { + s.LastBackupTime = &v return s } -// SetReportJobs sets the ReportJobs field's value. -func (s *ListReportJobsOutput) SetReportJobs(v []*ReportJob) *ListReportJobsOutput { - s.ReportJobs = v +// SetLastBackupVaultArn sets the LastBackupVaultArn field's value. +func (s *ProtectedResource) SetLastBackupVaultArn(v string) *ProtectedResource { + s.LastBackupVaultArn = &v return s } -type ListReportPlansInput struct { - _ struct{} `type:"structure" nopayload:"true"` +// SetLastRecoveryPointArn sets the LastRecoveryPointArn field's value. +func (s *ProtectedResource) SetLastRecoveryPointArn(v string) *ProtectedResource { + s.LastRecoveryPointArn = &v + return s +} - // The number of desired results from 1 to 1000. Optional. If unspecified, the - // query will return 1 MB of data. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` +// SetResourceArn sets the ResourceArn field's value. +func (s *ProtectedResource) SetResourceArn(v string) *ProtectedResource { + s.ResourceArn = &v + return s +} - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +// SetResourceName sets the ResourceName field's value. +func (s *ProtectedResource) SetResourceName(v string) *ProtectedResource { + s.ResourceName = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ProtectedResource) SetResourceType(v string) *ProtectedResource { + s.ResourceType = &v + return s +} + +// A list of conditions that you define for resources in your restore testing +// plan using tags. +// +// For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", "Value": +// "true" },. Condition operators are case sensitive. +type ProtectedResourceConditions struct { + _ struct{} `type:"structure"` + + // Filters the values of your tagged resources for only those resources that + // you tagged with the same value. Also called "exact matching." + StringEquals []*KeyValue `type:"list"` + + // Filters the values of your tagged resources for only those resources that + // you tagged that do not have the same value. Also called "negated matching." + StringNotEquals []*KeyValue `type:"list"` } // String returns the string representation. @@ -17985,7 +21931,7 @@ type ListReportPlansInput 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 ListReportPlansInput) String() string { +func (s ProtectedResourceConditions) String() string { return awsutil.Prettify(s) } @@ -17994,15 +21940,32 @@ func (s ListReportPlansInput) 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 ListReportPlansInput) GoString() string { +func (s ProtectedResourceConditions) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListReportPlansInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListReportPlansInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *ProtectedResourceConditions) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProtectedResourceConditions"} + if s.StringEquals != nil { + for i, v := range s.StringEquals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringEquals", i), err.(request.ErrInvalidParams)) + } + } + } + if s.StringNotEquals != nil { + for i, v := range s.StringNotEquals { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "StringNotEquals", i), err.(request.ErrInvalidParams)) + } + } } if invalidParams.Len() > 0 { @@ -18011,30 +21974,31 @@ func (s *ListReportPlansInput) Validate() error { return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *ListReportPlansInput) SetMaxResults(v int64) *ListReportPlansInput { - s.MaxResults = &v +// SetStringEquals sets the StringEquals field's value. +func (s *ProtectedResourceConditions) SetStringEquals(v []*KeyValue) *ProtectedResourceConditions { + s.StringEquals = v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListReportPlansInput) SetNextToken(v string) *ListReportPlansInput { - s.NextToken = &v +// SetStringNotEquals sets the StringNotEquals field's value. +func (s *ProtectedResourceConditions) SetStringNotEquals(v []*KeyValue) *ProtectedResourceConditions { + s.StringNotEquals = v return s } -type ListReportPlansOutput struct { +type PutBackupVaultAccessPolicyInput struct { _ struct{} `type:"structure"` - // An identifier that was returned from the previous call to this operation, - // which can be used to return the next set of items in the list. - NextToken *string `type:"string"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - // A list of your report plans with detailed information for each plan. This - // information includes the Amazon Resource Name (ARN), report plan name, description, - // settings, delivery channel, deployment status, creation time, and last times - // the report plan attempted to and successfully ran. - ReportPlans []*ReportPlan `type:"list"` + // The backup vault access policy document in JSON format. + Policy *string `type:"string"` } // String returns the string representation. @@ -18042,7 +22006,7 @@ type ListReportPlansOutput 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 ListReportPlansOutput) String() string { +func (s PutBackupVaultAccessPolicyInput) String() string { return awsutil.Prettify(s) } @@ -18051,78 +22015,123 @@ func (s ListReportPlansOutput) 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 ListReportPlansOutput) GoString() string { +func (s PutBackupVaultAccessPolicyInput) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListReportPlansOutput) SetNextToken(v string) *ListReportPlansOutput { - s.NextToken = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutBackupVaultAccessPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultAccessPolicyInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *PutBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *PutBackupVaultAccessPolicyInput { + s.BackupVaultName = &v return s } -// SetReportPlans sets the ReportPlans field's value. -func (s *ListReportPlansOutput) SetReportPlans(v []*ReportPlan) *ListReportPlansOutput { - s.ReportPlans = v +// SetPolicy sets the Policy field's value. +func (s *PutBackupVaultAccessPolicyInput) SetPolicy(v string) *PutBackupVaultAccessPolicyInput { + s.Policy = &v return s } -type ListRestoreJobSummariesInput struct { - _ struct{} `type:"structure" nopayload:"true"` +type PutBackupVaultAccessPolicyOutput struct { + _ struct{} `type:"structure"` +} - // Returns the job count for the specified account. - // - // If the request is sent from a member account or an account not part of Amazon - // Web Services Organizations, jobs within requestor's account will be returned. - // - // Root, admin, and delegated administrator accounts can use the value ANY to - // return job counts from every account in the organization. - // - // AGGREGATE_ALL aggregates job counts from all accounts within the authenticated - // organization, then returns the sum. - AccountId *string `location:"querystring" locationName:"AccountId" 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 PutBackupVaultAccessPolicyOutput) 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 PutBackupVaultAccessPolicyOutput) GoString() string { + return s.String() +} - // This is the period that sets the boundaries for returned results. - // - // Acceptable values include +type PutBackupVaultLockConfigurationInput struct { + _ struct{} `type:"structure"` + + // The Backup Vault Lock configuration that specifies the name of the backup + // vault it protects. // - // * ONE_DAY for daily job count for the prior 14 days. + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + + // The Backup Vault Lock configuration that specifies the number of days before + // the lock date. For example, setting ChangeableForDays to 30 on Jan. 1, 2022 + // at 8pm UTC will set the lock date to Jan. 31, 2022 at 8pm UTC. // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. + // Backup enforces a 72-hour cooling-off period before Vault Lock takes effect + // and becomes immutable. Therefore, you must set ChangeableForDays to 3 or + // greater. // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `location:"querystring" locationName:"AggregationPeriod" type:"string" enum:"AggregationPeriod"` - - // This parameter sets the maximum number of items to be returned. + // Before the lock date, you can delete Vault Lock from the vault using DeleteBackupVaultLockConfiguration + // or change the Vault Lock configuration using PutBackupVaultLockConfiguration. + // On and after the lock date, the Vault Lock becomes immutable and cannot be + // changed or deleted. // - // The value is an integer. Range of accepted values is from 1 to 500. - MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` - - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. - NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` + // If this parameter is not specified, you can delete Vault Lock from the vault + // using DeleteBackupVaultLockConfiguration or change the Vault Lock configuration + // using PutBackupVaultLockConfiguration at any time. + ChangeableForDays *int64 `type:"long"` - // Returns the job count for the specified resource type. Use request GetSupportedResourceTypes - // to obtain strings for supported resource types. - // - // The the value ANY returns count of all resource types. + // The Backup Vault Lock configuration that specifies the maximum retention + // period that the vault retains its recovery points. This setting can be useful + // if, for example, your organization's policies require you to destroy certain + // data after retaining it for four years (1460 days). // - // AGGREGATE_ALL aggregates job counts for all resource types and returns the - // sum. + // If this parameter is not included, Vault Lock does not enforce a maximum + // retention period on the recovery points in the vault. If this parameter is + // included without a value, Vault Lock will not enforce a maximum retention + // period. // - // The type of Amazon Web Services resource to be backed up; for example, an - // Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational Database - // Service (Amazon RDS) database. - ResourceType *string `location:"querystring" locationName:"ResourceType" type:"string"` + // If this parameter is specified, any backup or copy job to the vault must + // have a lifecycle policy with a retention period equal to or shorter than + // the maximum retention period. If the job's retention period is longer than + // that maximum retention period, then the vault fails the backup or copy job, + // and you should either modify your lifecycle settings or use a different vault. + // The longest maximum retention period you can specify is 36500 days (approximately + // 100 years). Recovery points already saved in the vault prior to Vault Lock + // are not affected. + MaxRetentionDays *int64 `type:"long"` - // This parameter returns the job count for jobs with the specified state. + // The Backup Vault Lock configuration that specifies the minimum retention + // period that the vault retains its recovery points. This setting can be useful + // if, for example, your organization's policies require you to retain certain + // data for at least seven years (2555 days). // - // The the value ANY returns count of all states. + // If this parameter is not specified, Vault Lock will not enforce a minimum + // retention period. // - // AGGREGATE_ALL aggregates job counts for all states and returns the sum. - State *string `location:"querystring" locationName:"State" type:"string" enum:"RestoreJobState"` + // If this parameter is specified, any backup or copy job to the vault must + // have a lifecycle policy with a retention period equal to or longer than the + // minimum retention period. If the job's retention period is shorter than that + // minimum retention period, then the vault fails that backup or copy job, and + // you should either modify your lifecycle settings or use a different vault. + // The shortest minimum retention period you can specify is 1 day. Recovery + // points already saved in the vault prior to Vault Lock are not affected. + MinRetentionDays *int64 `type:"long"` } // String returns the string representation. @@ -18130,7 +22139,7 @@ type ListRestoreJobSummariesInput 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 ListRestoreJobSummariesInput) String() string { +func (s PutBackupVaultLockConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -18139,15 +22148,18 @@ func (s ListRestoreJobSummariesInput) 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 ListRestoreJobSummariesInput) GoString() string { +func (s PutBackupVaultLockConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListRestoreJobSummariesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobSummariesInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *PutBackupVaultLockConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultLockConfigurationInput"} + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) } if invalidParams.Len() > 0 { @@ -18156,63 +22168,32 @@ func (s *ListRestoreJobSummariesInput) Validate() error { return nil } -// SetAccountId sets the AccountId field's value. -func (s *ListRestoreJobSummariesInput) SetAccountId(v string) *ListRestoreJobSummariesInput { - s.AccountId = &v - return s -} - -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListRestoreJobSummariesInput) SetAggregationPeriod(v string) *ListRestoreJobSummariesInput { - s.AggregationPeriod = &v - return s -} - -// SetMaxResults sets the MaxResults field's value. -func (s *ListRestoreJobSummariesInput) SetMaxResults(v int64) *ListRestoreJobSummariesInput { - s.MaxResults = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *PutBackupVaultLockConfigurationInput) SetBackupVaultName(v string) *PutBackupVaultLockConfigurationInput { + s.BackupVaultName = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListRestoreJobSummariesInput) SetNextToken(v string) *ListRestoreJobSummariesInput { - s.NextToken = &v +// SetChangeableForDays sets the ChangeableForDays field's value. +func (s *PutBackupVaultLockConfigurationInput) SetChangeableForDays(v int64) *PutBackupVaultLockConfigurationInput { + s.ChangeableForDays = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *ListRestoreJobSummariesInput) SetResourceType(v string) *ListRestoreJobSummariesInput { - s.ResourceType = &v +// SetMaxRetentionDays sets the MaxRetentionDays field's value. +func (s *PutBackupVaultLockConfigurationInput) SetMaxRetentionDays(v int64) *PutBackupVaultLockConfigurationInput { + s.MaxRetentionDays = &v return s } -// SetState sets the State field's value. -func (s *ListRestoreJobSummariesInput) SetState(v string) *ListRestoreJobSummariesInput { - s.State = &v +// SetMinRetentionDays sets the MinRetentionDays field's value. +func (s *PutBackupVaultLockConfigurationInput) SetMinRetentionDays(v int64) *PutBackupVaultLockConfigurationInput { + s.MinRetentionDays = &v return s } -type ListRestoreJobSummariesOutput struct { +type PutBackupVaultLockConfigurationOutput struct { _ struct{} `type:"structure"` - - // This is the period that sets the boundaries for returned results. - // - // * ONE_DAY for daily job count for the prior 14 days. - // - // * SEVEN_DAYS for the aggregated job count for the prior 7 days. - // - // * FOURTEEN_DAYS for aggregated job count for prior 14 days. - AggregationPeriod *string `type:"string"` - - // The next item following a partial list of returned resources. For example, - // if a request is made to return maxResults number of resources, NextToken - // allows you to return more items in your list starting at the location pointed - // to by the next token. - NextToken *string `type:"string"` - - // This return contains a summary that contains Region, Account, State, ResourceType, - // MessageCategory, StartTime, EndTime, and Count of included jobs. - RestoreJobSummaries []*RestoreJobSummary `type:"list"` } // String returns the string representation. @@ -18220,7 +22201,7 @@ type ListRestoreJobSummariesOutput 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 ListRestoreJobSummariesOutput) String() string { +func (s PutBackupVaultLockConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -18229,60 +22210,49 @@ func (s ListRestoreJobSummariesOutput) 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 ListRestoreJobSummariesOutput) GoString() string { +func (s PutBackupVaultLockConfigurationOutput) GoString() string { return s.String() } -// SetAggregationPeriod sets the AggregationPeriod field's value. -func (s *ListRestoreJobSummariesOutput) SetAggregationPeriod(v string) *ListRestoreJobSummariesOutput { - s.AggregationPeriod = &v - return s -} - -// SetNextToken sets the NextToken field's value. -func (s *ListRestoreJobSummariesOutput) SetNextToken(v string) *ListRestoreJobSummariesOutput { - s.NextToken = &v - return s -} - -// SetRestoreJobSummaries sets the RestoreJobSummaries field's value. -func (s *ListRestoreJobSummariesOutput) SetRestoreJobSummaries(v []*RestoreJobSummary) *ListRestoreJobSummariesOutput { - s.RestoreJobSummaries = v - return s -} - -type ListRestoreJobsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The account ID to list the jobs from. Returns only restore jobs associated - // with the specified account ID. - ByAccountId *string `location:"querystring" locationName:"accountId" type:"string"` - - // Returns only copy jobs completed after a date expressed in Unix format and - // Coordinated Universal Time (UTC). - ByCompleteAfter *time.Time `location:"querystring" locationName:"completeAfter" type:"timestamp"` - - // Returns only copy jobs completed before a date expressed in Unix format and - // Coordinated Universal Time (UTC). - ByCompleteBefore *time.Time `location:"querystring" locationName:"completeBefore" type:"timestamp"` - - // Returns only restore jobs that were created after the specified date. - ByCreatedAfter *time.Time `location:"querystring" locationName:"createdAfter" type:"timestamp"` - - // Returns only restore jobs that were created before the specified date. - ByCreatedBefore *time.Time `location:"querystring" locationName:"createdBefore" type:"timestamp"` +type PutBackupVaultNotificationsInput struct { + _ struct{} `type:"structure"` - // Returns only restore jobs associated with the specified job status. - ByStatus *string `location:"querystring" locationName:"status" type:"string" enum:"RestoreJobStatus"` + // An array of events that indicate the status of jobs to back up resources + // to the backup vault. + // + // For common use cases and code samples, see Using Amazon SNS to track Backup + // events (https://docs.aws.amazon.com/aws-backup/latest/devguide/sns-notifications.html). + // + // The following events are supported: + // + // * BACKUP_JOB_STARTED | BACKUP_JOB_COMPLETED + // + // * COPY_JOB_STARTED | COPY_JOB_SUCCESSFUL | COPY_JOB_FAILED + // + // * RESTORE_JOB_STARTED | RESTORE_JOB_COMPLETED | RECOVERY_POINT_MODIFIED + // + // * S3_BACKUP_OBJECT_FAILED | S3_RESTORE_OBJECT_FAILED + // + // The list below shows items that are deprecated events (for reference) and + // are no longer in use. They are no longer supported and will not return statuses + // or notifications. Refer to the list above for current supported events. + // + // BackupVaultEvents is a required field + BackupVaultEvents []*string `type:"list" required:"true" enum:"VaultEvent"` - // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + // + // BackupVaultName is a required field + BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s + // events; for example, arn:aws:sns:us-west-2:111122223333:MyVaultTopic. + // + // SNSTopicArn is a required field + SNSTopicArn *string `type:"string" required:"true"` } // String returns the string representation. @@ -18290,7 +22260,7 @@ type ListRestoreJobsInput 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 ListRestoreJobsInput) String() string { +func (s PutBackupVaultNotificationsInput) String() string { return awsutil.Prettify(s) } @@ -18299,15 +22269,24 @@ func (s ListRestoreJobsInput) 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 ListRestoreJobsInput) GoString() string { +func (s PutBackupVaultNotificationsInput) GoString() string { return s.String() } - -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListRestoreJobsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListRestoreJobsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutBackupVaultNotificationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultNotificationsInput"} + if s.BackupVaultEvents == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultEvents")) + } + if s.BackupVaultName == nil { + invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) + } + if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) + } + if s.SNSTopicArn == nil { + invalidParams.Add(request.NewErrParamRequired("SNSTopicArn")) } if invalidParams.Len() > 0 { @@ -18316,66 +22295,26 @@ func (s *ListRestoreJobsInput) Validate() error { return nil } -// SetByAccountId sets the ByAccountId field's value. -func (s *ListRestoreJobsInput) SetByAccountId(v string) *ListRestoreJobsInput { - s.ByAccountId = &v - return s -} - -// SetByCompleteAfter sets the ByCompleteAfter field's value. -func (s *ListRestoreJobsInput) SetByCompleteAfter(v time.Time) *ListRestoreJobsInput { - s.ByCompleteAfter = &v - return s -} - -// SetByCompleteBefore sets the ByCompleteBefore field's value. -func (s *ListRestoreJobsInput) SetByCompleteBefore(v time.Time) *ListRestoreJobsInput { - s.ByCompleteBefore = &v - return s -} - -// SetByCreatedAfter sets the ByCreatedAfter field's value. -func (s *ListRestoreJobsInput) SetByCreatedAfter(v time.Time) *ListRestoreJobsInput { - s.ByCreatedAfter = &v - return s -} - -// SetByCreatedBefore sets the ByCreatedBefore field's value. -func (s *ListRestoreJobsInput) SetByCreatedBefore(v time.Time) *ListRestoreJobsInput { - s.ByCreatedBefore = &v - return s -} - -// SetByStatus sets the ByStatus field's value. -func (s *ListRestoreJobsInput) SetByStatus(v string) *ListRestoreJobsInput { - s.ByStatus = &v +// SetBackupVaultEvents sets the BackupVaultEvents field's value. +func (s *PutBackupVaultNotificationsInput) SetBackupVaultEvents(v []*string) *PutBackupVaultNotificationsInput { + s.BackupVaultEvents = v return s } -// SetMaxResults sets the MaxResults field's value. -func (s *ListRestoreJobsInput) SetMaxResults(v int64) *ListRestoreJobsInput { - s.MaxResults = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *PutBackupVaultNotificationsInput) SetBackupVaultName(v string) *PutBackupVaultNotificationsInput { + s.BackupVaultName = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListRestoreJobsInput) SetNextToken(v string) *ListRestoreJobsInput { - s.NextToken = &v +// SetSNSTopicArn sets the SNSTopicArn field's value. +func (s *PutBackupVaultNotificationsInput) SetSNSTopicArn(v string) *PutBackupVaultNotificationsInput { + s.SNSTopicArn = &v return s } -type ListRestoreJobsOutput struct { +type PutBackupVaultNotificationsOutput struct { _ struct{} `type:"structure"` - - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `type:"string"` - - // An array of objects that contain detailed information about jobs to restore - // saved resources. - RestoreJobs []*RestoreJobsListMember `type:"list"` } // String returns the string representation. @@ -18383,7 +22322,7 @@ type ListRestoreJobsOutput 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 ListRestoreJobsOutput) String() string { +func (s PutBackupVaultNotificationsOutput) String() string { return awsutil.Prettify(s) } @@ -18392,40 +22331,26 @@ func (s ListRestoreJobsOutput) 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 ListRestoreJobsOutput) GoString() string { +func (s PutBackupVaultNotificationsOutput) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListRestoreJobsOutput) SetNextToken(v string) *ListRestoreJobsOutput { - s.NextToken = &v - return s -} - -// SetRestoreJobs sets the RestoreJobs field's value. -func (s *ListRestoreJobsOutput) SetRestoreJobs(v []*RestoreJobsListMember) *ListRestoreJobsOutput { - s.RestoreJobs = v - return s -} - -type ListTagsInput struct { - _ struct{} `type:"structure" nopayload:"true"` - - // The maximum number of items to be returned. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` +type PutRestoreValidationResultInput struct { + _ struct{} `type:"structure"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + // This is a unique identifier of a restore job within Backup. + // + // RestoreJobId is a required field + RestoreJobId *string `location:"uri" locationName:"restoreJobId" type:"string" required:"true"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the type of resource. Valid targets for ListTags are - // recovery points, backup plans, and backup vaults. + // This is the status of your restore validation. // - // ResourceArn is a required field - ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"` + // ValidationStatus is a required field + ValidationStatus *string `type:"string" required:"true" enum:"RestoreValidationStatus"` + + // This is an optional message string you can input to describe the validation + // status for the restore test validation. + ValidationStatusMessage *string `type:"string"` } // String returns the string representation. @@ -18433,7 +22358,7 @@ type ListTagsInput 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 ListTagsInput) String() string { +func (s PutRestoreValidationResultInput) String() string { return awsutil.Prettify(s) } @@ -18442,21 +22367,21 @@ func (s ListTagsInput) 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 ListTagsInput) GoString() string { +func (s PutRestoreValidationResultInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListTagsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *PutRestoreValidationResultInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutRestoreValidationResultInput"} + if s.RestoreJobId == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreJobId")) } - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + if s.RestoreJobId != nil && len(*s.RestoreJobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreJobId", 1)) } - if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + if s.ValidationStatus == nil { + invalidParams.Add(request.NewErrParamRequired("ValidationStatus")) } if invalidParams.Len() > 0 { @@ -18465,40 +22390,159 @@ func (s *ListTagsInput) Validate() error { return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *ListTagsInput) SetMaxResults(v int64) *ListTagsInput { - s.MaxResults = &v +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *PutRestoreValidationResultInput) SetRestoreJobId(v string) *PutRestoreValidationResultInput { + s.RestoreJobId = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListTagsInput) SetNextToken(v string) *ListTagsInput { - s.NextToken = &v +// SetValidationStatus sets the ValidationStatus field's value. +func (s *PutRestoreValidationResultInput) SetValidationStatus(v string) *PutRestoreValidationResultInput { + s.ValidationStatus = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *ListTagsInput) SetResourceArn(v string) *ListTagsInput { - s.ResourceArn = &v +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *PutRestoreValidationResultInput) SetValidationStatusMessage(v string) *PutRestoreValidationResultInput { + s.ValidationStatusMessage = &v return s } -type ListTagsOutput struct { - _ struct{} `type:"structure"` +type PutRestoreValidationResultOutput 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 PutRestoreValidationResultOutput) 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 PutRestoreValidationResultOutput) GoString() string { + return s.String() +} + +// Contains detailed information about the recovery points stored in a backup +// vault. +type RecoveryPointByBackupVault struct { + _ struct{} `type:"structure"` + + // The size, in bytes, of a backup. + BackupSizeInBytes *int64 `type:"long"` + + // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. + BackupVaultArn *string `type:"string"` + + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + BackupVaultName *string `type:"string"` + + // A CalculatedLifecycle object containing DeleteAt and MoveToColdStorageAt + // timestamps. + CalculatedLifecycle *CalculatedLifecycle `type:"structure"` + + // The date and time a job to restore a recovery point is completed, in Unix + // format and Coordinated Universal Time (UTC). The value of CompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` + + // This is the identifier of a resource within a composite group, such as nested + // (child) recovery point belonging to a composite (parent) stack. The ID is + // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) + // within a stack. + CompositeMemberIdentifier *string `type:"string"` + + // Contains identifying information about the creation of a recovery point, + // including the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId + // of the backup plan that is used to create it. + CreatedBy *RecoveryPointCreator `type:"structure"` + + // The date and time a recovery point is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // The server-side encryption key that is used to protect your backups; for + // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. + EncryptionKeyArn *string `type:"string"` + + // Specifies the IAM role ARN used to create the target recovery point; for + // example, arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // A Boolean value that is returned as TRUE if the specified recovery point + // is encrypted, or FALSE if the recovery point is not encrypted. + IsEncrypted *bool `type:"boolean"` + + // This is a boolean value indicating this is a parent (composite) recovery + // point. + IsParent *bool `type:"boolean"` + + // The date and time a recovery point was last restored, in Unix format and + // Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + LastRestoreTime *time.Time `type:"timestamp"` + + // The lifecycle defines when a protected resource is transitioned to cold storage + // and when it expires. Backup transitions and expires backups automatically + // according to the lifecycle that you define. + // + // Backups transitioned to cold storage must be stored in cold storage for a + // minimum of 90 days. Therefore, the “retention” setting must be 90 days + // greater than the “transition to cold after days” setting. The “transition + // to cold after days” setting cannot be changed after a backup has been transitioned + // to cold. + // + // Resource types that are able to be transitioned to cold storage are listed + // in the "Lifecycle to cold storage" section of the Feature availability by + // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) + // table. Backup ignores this expression for other resource types. + Lifecycle *Lifecycle `type:"structure"` + + // This is the Amazon Resource Name (ARN) of the parent (composite) recovery + // point. + ParentRecoveryPointArn *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // An ARN that uniquely identifies a resource. The format of the ARN depends + // on the resource type. + ResourceArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // The type of Amazon Web Services resource saved as a recovery point; for example, + // an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational + // Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service + // (VSS) backups, the only supported resource type is Amazon EC2. + ResourceType *string `type:"string"` + + // The backup vault where the recovery point was originally copied from. If + // the recovery point is restored to the same account this value will be null. + SourceBackupVaultArn *string `type:"string"` - // The next item following a partial list of returned items. For example, if - // a request is made to return maxResults number of items, NextToken allows - // you to return more items in your list starting at the location pointed to - // by the next token. - NextToken *string `type:"string"` + // A status code specifying the state of the recovery point. + Status *string `type:"string" enum:"RecoveryPointStatus"` - // To help organize your resources, you can assign your own metadata to the - // resources you create. Each tag is a key-value pair. - // - // Tags is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by ListTagsOutput's - // String and GoString methods. - Tags map[string]*string `type:"map" sensitive:"true"` + // A message explaining the reason of the recovery point deletion failure. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -18506,7 +22550,7 @@ type ListTagsOutput 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 ListTagsOutput) String() string { +func (s RecoveryPointByBackupVault) String() string { return awsutil.Prettify(s) } @@ -18515,172 +22559,186 @@ func (s ListTagsOutput) 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 ListTagsOutput) GoString() string { +func (s RecoveryPointByBackupVault) GoString() string { return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListTagsOutput) SetNextToken(v string) *ListTagsOutput { - s.NextToken = &v +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *RecoveryPointByBackupVault) SetBackupSizeInBytes(v int64) *RecoveryPointByBackupVault { + s.BackupSizeInBytes = &v return s } -// SetTags sets the Tags field's value. -func (s *ListTagsOutput) SetTags(v map[string]*string) *ListTagsOutput { - s.Tags = v +// SetBackupVaultArn sets the BackupVaultArn field's value. +func (s *RecoveryPointByBackupVault) SetBackupVaultArn(v string) *RecoveryPointByBackupVault { + s.BackupVaultArn = &v return s } -// Indicates that a required parameter is missing. -type MissingParameterValueException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Code_ *string `locationName:"Code" type:"string"` - - Context *string `type:"string"` - - Message_ *string `locationName:"Message" type:"string"` +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *RecoveryPointByBackupVault) SetBackupVaultName(v string) *RecoveryPointByBackupVault { + s.BackupVaultName = &v + return s +} - Type *string `type:"string"` +// SetCalculatedLifecycle sets the CalculatedLifecycle field's value. +func (s *RecoveryPointByBackupVault) SetCalculatedLifecycle(v *CalculatedLifecycle) *RecoveryPointByBackupVault { + s.CalculatedLifecycle = v + return s } -// 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 MissingParameterValueException) String() string { - return awsutil.Prettify(s) +// SetCompletionDate sets the CompletionDate field's value. +func (s *RecoveryPointByBackupVault) SetCompletionDate(v time.Time) *RecoveryPointByBackupVault { + s.CompletionDate = &v + return 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 MissingParameterValueException) GoString() string { - return s.String() +// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. +func (s *RecoveryPointByBackupVault) SetCompositeMemberIdentifier(v string) *RecoveryPointByBackupVault { + s.CompositeMemberIdentifier = &v + return s } -func newErrorMissingParameterValueException(v protocol.ResponseMetadata) error { - return &MissingParameterValueException{ - RespMetadata: v, - } +// SetCreatedBy sets the CreatedBy field's value. +func (s *RecoveryPointByBackupVault) SetCreatedBy(v *RecoveryPointCreator) *RecoveryPointByBackupVault { + s.CreatedBy = v + return s } -// Code returns the exception type name. -func (s *MissingParameterValueException) Code() string { - return "MissingParameterValueException" +// SetCreationDate sets the CreationDate field's value. +func (s *RecoveryPointByBackupVault) SetCreationDate(v time.Time) *RecoveryPointByBackupVault { + s.CreationDate = &v + return s } -// Message returns the exception's message. -func (s *MissingParameterValueException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *RecoveryPointByBackupVault) SetEncryptionKeyArn(v string) *RecoveryPointByBackupVault { + s.EncryptionKeyArn = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *MissingParameterValueException) OrigErr() error { - return nil +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RecoveryPointByBackupVault) SetIamRoleArn(v string) *RecoveryPointByBackupVault { + s.IamRoleArn = &v + return s } -func (s *MissingParameterValueException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetIsEncrypted sets the IsEncrypted field's value. +func (s *RecoveryPointByBackupVault) SetIsEncrypted(v bool) *RecoveryPointByBackupVault { + s.IsEncrypted = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *MissingParameterValueException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetIsParent sets the IsParent field's value. +func (s *RecoveryPointByBackupVault) SetIsParent(v bool) *RecoveryPointByBackupVault { + s.IsParent = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *MissingParameterValueException) RequestID() string { - return s.RespMetadata.RequestID +// SetLastRestoreTime sets the LastRestoreTime field's value. +func (s *RecoveryPointByBackupVault) SetLastRestoreTime(v time.Time) *RecoveryPointByBackupVault { + s.LastRestoreTime = &v + return s } -// Contains an optional backup plan display name and an array of BackupRule -// objects, each of which specifies a backup rule. Each rule in a backup plan -// is a separate scheduled task and can back up a different selection of Amazon -// Web Services resources. -type Plan struct { - _ struct{} `type:"structure"` +// SetLifecycle sets the Lifecycle field's value. +func (s *RecoveryPointByBackupVault) SetLifecycle(v *Lifecycle) *RecoveryPointByBackupVault { + s.Lifecycle = v + return s +} - // Contains a list of BackupOptions for each resource type. - AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` +// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. +func (s *RecoveryPointByBackupVault) SetParentRecoveryPointArn(v string) *RecoveryPointByBackupVault { + s.ParentRecoveryPointArn = &v + return s +} - // The display name of a backup plan. Must contain 1 to 50 alphanumeric or '-_.' - // characters. - // - // BackupPlanName is a required field - BackupPlanName *string `type:"string" required:"true"` +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *RecoveryPointByBackupVault) SetRecoveryPointArn(v string) *RecoveryPointByBackupVault { + s.RecoveryPointArn = &v + return s +} - // An array of BackupRule objects, each of which specifies a scheduled task - // that is used to back up a selection of resources. - // - // Rules is a required field - Rules []*Rule `type:"list" required:"true"` +// SetResourceArn sets the ResourceArn field's value. +func (s *RecoveryPointByBackupVault) SetResourceArn(v string) *RecoveryPointByBackupVault { + s.ResourceArn = &v + return s } -// 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 Plan) String() string { - return awsutil.Prettify(s) +// SetResourceName sets the ResourceName field's value. +func (s *RecoveryPointByBackupVault) SetResourceName(v string) *RecoveryPointByBackupVault { + s.ResourceName = &v + return 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 Plan) GoString() string { - return s.String() +// SetResourceType sets the ResourceType field's value. +func (s *RecoveryPointByBackupVault) SetResourceType(v string) *RecoveryPointByBackupVault { + s.ResourceType = &v + return s } -// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. -func (s *Plan) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *Plan { - s.AdvancedBackupSettings = v +// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. +func (s *RecoveryPointByBackupVault) SetSourceBackupVaultArn(v string) *RecoveryPointByBackupVault { + s.SourceBackupVaultArn = &v return s } -// SetBackupPlanName sets the BackupPlanName field's value. -func (s *Plan) SetBackupPlanName(v string) *Plan { - s.BackupPlanName = &v +// SetStatus sets the Status field's value. +func (s *RecoveryPointByBackupVault) SetStatus(v string) *RecoveryPointByBackupVault { + s.Status = &v return s } -// SetRules sets the Rules field's value. -func (s *Plan) SetRules(v []*Rule) *Plan { - s.Rules = v +// SetStatusMessage sets the StatusMessage field's value. +func (s *RecoveryPointByBackupVault) SetStatusMessage(v string) *RecoveryPointByBackupVault { + s.StatusMessage = &v return s } -// Contains an optional backup plan display name and an array of BackupRule -// objects, each of which specifies a backup rule. Each rule in a backup plan -// is a separate scheduled task. -type PlanInput struct { +// Contains detailed information about a saved recovery point. +type RecoveryPointByResource struct { _ struct{} `type:"structure"` - // Specifies a list of BackupOptions for each resource type. These settings - // are only available for Windows Volume Shadow Copy Service (VSS) backup jobs. - AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` + // The size, in bytes, of a backup. + BackupSizeBytes *int64 `type:"long"` - // The display name of a backup plan. Must contain 1 to 50 alphanumeric or '-_.' - // characters. - // - // BackupPlanName is a required field - BackupPlanName *string `type:"string" required:"true"` + // The name of a logical container where backups are stored. Backup vaults are + // identified by names that are unique to the account used to create them and + // the Amazon Web Services Region where they are created. They consist of lowercase + // letters, numbers, and hyphens. + BackupVaultName *string `type:"string"` + + // The date and time a recovery point is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` + + // The server-side encryption key that is used to protect your backups; for + // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. + EncryptionKeyArn *string `type:"string"` + + // This is a boolean value indicating this is a parent (composite) recovery + // point. + IsParent *bool `type:"boolean"` + + // This is the Amazon Resource Name (ARN) of the parent (composite) recovery + // point. + ParentRecoveryPointArn *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; + // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // This is the non-unique name of the resource that belongs to the specified + // backup. + ResourceName *string `type:"string"` + + // A status code specifying the state of the recovery point. + Status *string `type:"string" enum:"RecoveryPointStatus"` - // An array of BackupRule objects, each of which specifies a scheduled task - // that is used to back up a selection of resources. - // - // Rules is a required field - Rules []*RuleInput `type:"list" required:"true"` + // A message explaining the reason of the recovery point deletion failure. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -18688,7 +22746,7 @@ type PlanInput 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 PlanInput) String() string { +func (s RecoveryPointByResource) String() string { return awsutil.Prettify(s) } @@ -18697,102 +22755,75 @@ func (s PlanInput) 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 PlanInput) GoString() string { +func (s RecoveryPointByResource) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *PlanInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PlanInput"} - if s.BackupPlanName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupPlanName")) - } - if s.Rules == nil { - invalidParams.Add(request.NewErrParamRequired("Rules")) - } - if s.Rules != nil { - for i, v := range s.Rules { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Rules", i), err.(request.ErrInvalidParams)) - } - } - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetBackupSizeBytes sets the BackupSizeBytes field's value. +func (s *RecoveryPointByResource) SetBackupSizeBytes(v int64) *RecoveryPointByResource { + s.BackupSizeBytes = &v + return s } -// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. -func (s *PlanInput) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *PlanInput { - s.AdvancedBackupSettings = v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *RecoveryPointByResource) SetBackupVaultName(v string) *RecoveryPointByResource { + s.BackupVaultName = &v return s } -// SetBackupPlanName sets the BackupPlanName field's value. -func (s *PlanInput) SetBackupPlanName(v string) *PlanInput { - s.BackupPlanName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *RecoveryPointByResource) SetCreationDate(v time.Time) *RecoveryPointByResource { + s.CreationDate = &v return s } -// SetRules sets the Rules field's value. -func (s *PlanInput) SetRules(v []*RuleInput) *PlanInput { - s.Rules = v +// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. +func (s *RecoveryPointByResource) SetEncryptionKeyArn(v string) *RecoveryPointByResource { + s.EncryptionKeyArn = &v return s } -// An object specifying metadata associated with a backup plan template. -type PlanTemplatesListMember struct { - _ struct{} `type:"structure"` - - // Uniquely identifies a stored backup plan template. - BackupPlanTemplateId *string `type:"string"` +// SetIsParent sets the IsParent field's value. +func (s *RecoveryPointByResource) SetIsParent(v bool) *RecoveryPointByResource { + s.IsParent = &v + return s +} - // The optional display name of a backup plan template. - BackupPlanTemplateName *string `type:"string"` +// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. +func (s *RecoveryPointByResource) SetParentRecoveryPointArn(v string) *RecoveryPointByResource { + s.ParentRecoveryPointArn = &v + return s } -// 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 PlanTemplatesListMember) String() string { - return awsutil.Prettify(s) +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *RecoveryPointByResource) SetRecoveryPointArn(v string) *RecoveryPointByResource { + s.RecoveryPointArn = &v + return 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 PlanTemplatesListMember) GoString() string { - return s.String() +// SetResourceName sets the ResourceName field's value. +func (s *RecoveryPointByResource) SetResourceName(v string) *RecoveryPointByResource { + s.ResourceName = &v + return s } -// SetBackupPlanTemplateId sets the BackupPlanTemplateId field's value. -func (s *PlanTemplatesListMember) SetBackupPlanTemplateId(v string) *PlanTemplatesListMember { - s.BackupPlanTemplateId = &v +// SetStatus sets the Status field's value. +func (s *RecoveryPointByResource) SetStatus(v string) *RecoveryPointByResource { + s.Status = &v return s } -// SetBackupPlanTemplateName sets the BackupPlanTemplateName field's value. -func (s *PlanTemplatesListMember) SetBackupPlanTemplateName(v string) *PlanTemplatesListMember { - s.BackupPlanTemplateName = &v +// SetStatusMessage sets the StatusMessage field's value. +func (s *RecoveryPointByResource) SetStatusMessage(v string) *RecoveryPointByResource { + s.StatusMessage = &v return s } -// Contains metadata about a backup plan. -type PlansListMember struct { +// Contains information about the backup plan and rule that Backup used to initiate +// the recovery point backup. +type RecoveryPointCreator struct { _ struct{} `type:"structure"` - // Contains a list of BackupOptions for a resource type. - AdvancedBackupSettings []*AdvancedBackupSetting `type:"list"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. BackupPlanArn *string `type:"string"` @@ -18800,37 +22831,13 @@ type PlansListMember struct { // Uniquely identifies a backup plan. BackupPlanId *string `type:"string"` - // The display name of a saved backup plan. - BackupPlanName *string `type:"string"` - - // The date and time a resource backup plan is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // A unique string that identifies the request and allows failed requests to - // be retried without the risk of running the operation twice. This parameter - // is optional. - // - // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. - CreatorRequestId *string `type:"string"` - - // The date and time a backup plan is deleted, in Unix format and Coordinated - // Universal Time (UTC). The value of DeletionDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - DeletionDate *time.Time `type:"timestamp"` - - // The last time a job to back up resources was run with this rule. A date and - // time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - LastExecutionDate *time.Time `type:"timestamp"` + // Version IDs are unique, randomly generated, Unicode, UTF-8 encoded strings + // that are at most 1,024 bytes long. They cannot be edited. + BackupPlanVersion *string `type:"string"` - // Unique, randomly generated, Unicode, UTF-8 encoded strings that are at most - // 1,024 bytes long. Version IDs cannot be edited. - VersionId *string `type:"string"` + // Uniquely identifies a rule used to schedule the backup of a selection of + // resources. + BackupRuleId *string `type:"string"` } // String returns the string representation. @@ -18838,7 +22845,7 @@ type PlansListMember 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 PlansListMember) String() string { +func (s RecoveryPointCreator) String() string { return awsutil.Prettify(s) } @@ -18847,86 +22854,54 @@ func (s PlansListMember) 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 PlansListMember) GoString() string { +func (s RecoveryPointCreator) GoString() string { return s.String() } -// SetAdvancedBackupSettings sets the AdvancedBackupSettings field's value. -func (s *PlansListMember) SetAdvancedBackupSettings(v []*AdvancedBackupSetting) *PlansListMember { - s.AdvancedBackupSettings = v - return s -} - // SetBackupPlanArn sets the BackupPlanArn field's value. -func (s *PlansListMember) SetBackupPlanArn(v string) *PlansListMember { +func (s *RecoveryPointCreator) SetBackupPlanArn(v string) *RecoveryPointCreator { s.BackupPlanArn = &v return s } // SetBackupPlanId sets the BackupPlanId field's value. -func (s *PlansListMember) SetBackupPlanId(v string) *PlansListMember { +func (s *RecoveryPointCreator) SetBackupPlanId(v string) *RecoveryPointCreator { s.BackupPlanId = &v return s } -// SetBackupPlanName sets the BackupPlanName field's value. -func (s *PlansListMember) SetBackupPlanName(v string) *PlansListMember { - s.BackupPlanName = &v - return s -} - -// SetCreationDate sets the CreationDate field's value. -func (s *PlansListMember) SetCreationDate(v time.Time) *PlansListMember { - s.CreationDate = &v - return s -} - -// SetCreatorRequestId sets the CreatorRequestId field's value. -func (s *PlansListMember) SetCreatorRequestId(v string) *PlansListMember { - s.CreatorRequestId = &v - return s -} - -// SetDeletionDate sets the DeletionDate field's value. -func (s *PlansListMember) SetDeletionDate(v time.Time) *PlansListMember { - s.DeletionDate = &v - return s -} - -// SetLastExecutionDate sets the LastExecutionDate field's value. -func (s *PlansListMember) SetLastExecutionDate(v time.Time) *PlansListMember { - s.LastExecutionDate = &v +// SetBackupPlanVersion sets the BackupPlanVersion field's value. +func (s *RecoveryPointCreator) SetBackupPlanVersion(v string) *RecoveryPointCreator { + s.BackupPlanVersion = &v return s } -// SetVersionId sets the VersionId field's value. -func (s *PlansListMember) SetVersionId(v string) *PlansListMember { - s.VersionId = &v +// SetBackupRuleId sets the BackupRuleId field's value. +func (s *RecoveryPointCreator) SetBackupRuleId(v string) *RecoveryPointCreator { + s.BackupRuleId = &v return s } -// A structure that contains information about a backed-up resource. -type ProtectedResource struct { +// This is a recovery point which is a child (nested) recovery point of a parent +// (composite) recovery point. These recovery points can be disassociated from +// their parent (composite) recovery point, in which case they will no longer +// be a member. +type RecoveryPointMember struct { _ struct{} `type:"structure"` - // The date and time a resource was last backed up, in Unix format and Coordinated - // Universal Time (UTC). The value of LastBackupTime is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - LastBackupTime *time.Time `type:"timestamp"` + // This is the name of the backup vault (the logical container in which backups + // are stored). + BackupVaultName *string `type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - ResourceArn *string `type:"string"` + // This is the Amazon Resource Name (ARN) of the parent (composite) recovery + // point. + RecoveryPointArn *string `type:"string"` - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` + // This is the Amazon Resource Name (ARN) that uniquely identifies a saved resource. + ResourceArn *string `type:"string"` - // The type of Amazon Web Services resource; for example, an Amazon Elastic - // Block Store (Amazon EBS) volume or an Amazon Relational Database Service - // (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, - // the only supported resource type is Amazon EC2. + // This is the Amazon Web Services resource type that is saved as a recovery + // point. ResourceType *string `type:"string"` } @@ -18935,7 +22910,7 @@ type ProtectedResource 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 ProtectedResource) String() string { +func (s RecoveryPointMember) String() string { return awsutil.Prettify(s) } @@ -18944,47 +22919,55 @@ func (s ProtectedResource) 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 ProtectedResource) GoString() string { +func (s RecoveryPointMember) GoString() string { return s.String() } -// SetLastBackupTime sets the LastBackupTime field's value. -func (s *ProtectedResource) SetLastBackupTime(v time.Time) *ProtectedResource { - s.LastBackupTime = &v +// SetBackupVaultName sets the BackupVaultName field's value. +func (s *RecoveryPointMember) SetBackupVaultName(v string) *RecoveryPointMember { + s.BackupVaultName = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *ProtectedResource) SetResourceArn(v string) *ProtectedResource { - s.ResourceArn = &v +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *RecoveryPointMember) SetRecoveryPointArn(v string) *RecoveryPointMember { + s.RecoveryPointArn = &v return s } - -// SetResourceName sets the ResourceName field's value. -func (s *ProtectedResource) SetResourceName(v string) *ProtectedResource { - s.ResourceName = &v + +// SetResourceArn sets the ResourceArn field's value. +func (s *RecoveryPointMember) SetResourceArn(v string) *RecoveryPointMember { + s.ResourceArn = &v return s } // SetResourceType sets the ResourceType field's value. -func (s *ProtectedResource) SetResourceType(v string) *ProtectedResource { +func (s *RecoveryPointMember) SetResourceType(v string) *RecoveryPointMember { s.ResourceType = &v return s } -type PutBackupVaultAccessPolicyInput struct { +// This specifies criteria to assign a set of resources, such as resource types +// or backup vaults. +type RecoveryPointSelection struct { _ struct{} `type:"structure"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. + // This is a resource filter containing FromDate: DateTime and ToDate: DateTime. + // Both values are required. Future DateTime values are not permitted. // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // The date and time are in Unix format and Coordinated Universal Time (UTC), + // and it is accurate to milliseconds ((milliseconds are optional). For example, + // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 + // AM. + DateRange *DateRange `type:"structure"` - // The backup vault access policy document in JSON format. - Policy *string `type:"string"` + // These are the resources included in the resource selection (including type + // of resources and vaults). + ResourceIdentifiers []*string `type:"list"` + + // These are the names of the vaults in which the selected recovery points are + // contained. + VaultNames []*string `type:"list"` } // String returns the string representation. @@ -18992,7 +22975,7 @@ type PutBackupVaultAccessPolicyInput 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 PutBackupVaultAccessPolicyInput) String() string { +func (s RecoveryPointSelection) String() string { return awsutil.Prettify(s) } @@ -19001,18 +22984,17 @@ func (s PutBackupVaultAccessPolicyInput) 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 PutBackupVaultAccessPolicyInput) GoString() string { +func (s RecoveryPointSelection) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *PutBackupVaultAccessPolicyInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultAccessPolicyInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) +func (s *RecoveryPointSelection) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RecoveryPointSelection"} + if s.DateRange != nil { + if err := s.DateRange.Validate(); err != nil { + invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) + } } if invalidParams.Len() > 0 { @@ -19021,103 +23003,43 @@ func (s *PutBackupVaultAccessPolicyInput) Validate() error { return nil } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *PutBackupVaultAccessPolicyInput) SetBackupVaultName(v string) *PutBackupVaultAccessPolicyInput { - s.BackupVaultName = &v +// SetDateRange sets the DateRange field's value. +func (s *RecoveryPointSelection) SetDateRange(v *DateRange) *RecoveryPointSelection { + s.DateRange = v return s } -// SetPolicy sets the Policy field's value. -func (s *PutBackupVaultAccessPolicyInput) SetPolicy(v string) *PutBackupVaultAccessPolicyInput { - s.Policy = &v +// SetResourceIdentifiers sets the ResourceIdentifiers field's value. +func (s *RecoveryPointSelection) SetResourceIdentifiers(v []*string) *RecoveryPointSelection { + s.ResourceIdentifiers = v return s } -type PutBackupVaultAccessPolicyOutput 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 PutBackupVaultAccessPolicyOutput) 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 PutBackupVaultAccessPolicyOutput) GoString() string { - return s.String() +// SetVaultNames sets the VaultNames field's value. +func (s *RecoveryPointSelection) SetVaultNames(v []*string) *RecoveryPointSelection { + s.VaultNames = v + return s } -type PutBackupVaultLockConfigurationInput struct { +// Contains information from your report plan about where to deliver your reports, +// specifically your Amazon S3 bucket name, S3 key prefix, and the formats of +// your reports. +type ReportDeliveryChannel struct { _ struct{} `type:"structure"` - // The Backup Vault Lock configuration that specifies the name of the backup - // vault it protects. - // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` - - // The Backup Vault Lock configuration that specifies the number of days before - // the lock date. For example, setting ChangeableForDays to 30 on Jan. 1, 2022 - // at 8pm UTC will set the lock date to Jan. 31, 2022 at 8pm UTC. - // - // Backup enforces a 72-hour cooling-off period before Vault Lock takes effect - // and becomes immutable. Therefore, you must set ChangeableForDays to 3 or - // greater. - // - // Before the lock date, you can delete Vault Lock from the vault using DeleteBackupVaultLockConfiguration - // or change the Vault Lock configuration using PutBackupVaultLockConfiguration. - // On and after the lock date, the Vault Lock becomes immutable and cannot be - // changed or deleted. - // - // If this parameter is not specified, you can delete Vault Lock from the vault - // using DeleteBackupVaultLockConfiguration or change the Vault Lock configuration - // using PutBackupVaultLockConfiguration at any time. - ChangeableForDays *int64 `type:"long"` + // A list of the format of your reports: CSV, JSON, or both. If not specified, + // the default format is CSV. + Formats []*string `type:"list"` - // The Backup Vault Lock configuration that specifies the maximum retention - // period that the vault retains its recovery points. This setting can be useful - // if, for example, your organization's policies require you to destroy certain - // data after retaining it for four years (1460 days). - // - // If this parameter is not included, Vault Lock does not enforce a maximum - // retention period on the recovery points in the vault. If this parameter is - // included without a value, Vault Lock will not enforce a maximum retention - // period. + // The unique name of the S3 bucket that receives your reports. // - // If this parameter is specified, any backup or copy job to the vault must - // have a lifecycle policy with a retention period equal to or shorter than - // the maximum retention period. If the job's retention period is longer than - // that maximum retention period, then the vault fails the backup or copy job, - // and you should either modify your lifecycle settings or use a different vault. - // The longest maximum retention period you can specify is 36500 days (approximately - // 100 years). Recovery points already saved in the vault prior to Vault Lock - // are not affected. - MaxRetentionDays *int64 `type:"long"` + // S3BucketName is a required field + S3BucketName *string `type:"string" required:"true"` - // The Backup Vault Lock configuration that specifies the minimum retention - // period that the vault retains its recovery points. This setting can be useful - // if, for example, your organization's policies require you to retain certain - // data for at least seven years (2555 days). - // - // If this parameter is not specified, Vault Lock will not enforce a minimum - // retention period. - // - // If this parameter is specified, any backup or copy job to the vault must - // have a lifecycle policy with a retention period equal to or longer than the - // minimum retention period. If the job's retention period is shorter than that - // minimum retention period, then the vault fails that backup or copy job, and - // you should either modify your lifecycle settings or use a different vault. - // The shortest minimum retention period you can specify is 1 day. Recovery - // points already saved in the vault prior to Vault Lock are not affected. - MinRetentionDays *int64 `type:"long"` + // The prefix for where Backup Audit Manager delivers your reports to Amazon + // S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. + // If not specified, there is no prefix. + S3KeyPrefix *string `type:"string"` } // String returns the string representation. @@ -19125,7 +23047,7 @@ type PutBackupVaultLockConfigurationInput 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 PutBackupVaultLockConfigurationInput) String() string { +func (s ReportDeliveryChannel) String() string { return awsutil.Prettify(s) } @@ -19134,18 +23056,15 @@ func (s PutBackupVaultLockConfigurationInput) 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 PutBackupVaultLockConfigurationInput) GoString() string { +func (s ReportDeliveryChannel) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *PutBackupVaultLockConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultLockConfigurationInput"} - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) +func (s *ReportDeliveryChannel) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReportDeliveryChannel"} + if s.S3BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("S3BucketName")) } if invalidParams.Len() > 0 { @@ -19154,32 +23073,33 @@ func (s *PutBackupVaultLockConfigurationInput) Validate() error { return nil } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *PutBackupVaultLockConfigurationInput) SetBackupVaultName(v string) *PutBackupVaultLockConfigurationInput { - s.BackupVaultName = &v - return s -} - -// SetChangeableForDays sets the ChangeableForDays field's value. -func (s *PutBackupVaultLockConfigurationInput) SetChangeableForDays(v int64) *PutBackupVaultLockConfigurationInput { - s.ChangeableForDays = &v +// SetFormats sets the Formats field's value. +func (s *ReportDeliveryChannel) SetFormats(v []*string) *ReportDeliveryChannel { + s.Formats = v return s } -// SetMaxRetentionDays sets the MaxRetentionDays field's value. -func (s *PutBackupVaultLockConfigurationInput) SetMaxRetentionDays(v int64) *PutBackupVaultLockConfigurationInput { - s.MaxRetentionDays = &v +// SetS3BucketName sets the S3BucketName field's value. +func (s *ReportDeliveryChannel) SetS3BucketName(v string) *ReportDeliveryChannel { + s.S3BucketName = &v return s } -// SetMinRetentionDays sets the MinRetentionDays field's value. -func (s *PutBackupVaultLockConfigurationInput) SetMinRetentionDays(v int64) *PutBackupVaultLockConfigurationInput { - s.MinRetentionDays = &v +// SetS3KeyPrefix sets the S3KeyPrefix field's value. +func (s *ReportDeliveryChannel) SetS3KeyPrefix(v string) *ReportDeliveryChannel { + s.S3KeyPrefix = &v return s } -type PutBackupVaultLockConfigurationOutput struct { +// Contains information from your report job about your report destination. +type ReportDestination struct { _ struct{} `type:"structure"` + + // The unique name of the Amazon S3 bucket that receives your reports. + S3BucketName *string `type:"string"` + + // The object key that uniquely identifies your reports in your S3 bucket. + S3Keys []*string `type:"list"` } // String returns the string representation. @@ -19187,7 +23107,7 @@ type PutBackupVaultLockConfigurationOutput 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 PutBackupVaultLockConfigurationOutput) String() string { +func (s ReportDestination) String() string { return awsutil.Prettify(s) } @@ -19196,49 +23116,69 @@ func (s PutBackupVaultLockConfigurationOutput) 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 PutBackupVaultLockConfigurationOutput) GoString() string { +func (s ReportDestination) GoString() string { return s.String() } -type PutBackupVaultNotificationsInput struct { +// SetS3BucketName sets the S3BucketName field's value. +func (s *ReportDestination) SetS3BucketName(v string) *ReportDestination { + s.S3BucketName = &v + return s +} + +// SetS3Keys sets the S3Keys field's value. +func (s *ReportDestination) SetS3Keys(v []*string) *ReportDestination { + s.S3Keys = v + return s +} + +// Contains detailed information about a report job. A report job compiles a +// report based on a report plan and publishes it to Amazon S3. +type ReportJob struct { _ struct{} `type:"structure"` - // An array of events that indicate the status of jobs to back up resources - // to the backup vault. - // - // For common use cases and code samples, see Using Amazon SNS to track Backup - // events (https://docs.aws.amazon.com/aws-backup/latest/devguide/sns-notifications.html). - // - // The following events are supported: - // - // * BACKUP_JOB_STARTED | BACKUP_JOB_COMPLETED - // - // * COPY_JOB_STARTED | COPY_JOB_SUCCESSFUL | COPY_JOB_FAILED - // - // * RESTORE_JOB_STARTED | RESTORE_JOB_COMPLETED | RECOVERY_POINT_MODIFIED - // - // * S3_BACKUP_OBJECT_FAILED | S3_RESTORE_OBJECT_FAILED - // - // The list below shows items that are deprecated events (for reference) and - // are no longer in use. They are no longer supported and will not return statuses - // or notifications. Refer to the list above for current supported events. - // - // BackupVaultEvents is a required field - BackupVaultEvents []*string `type:"list" required:"true" enum:"VaultEvent"` + // The date and time that a report job is completed, in Unix format and Coordinated + // Universal Time (UTC). The value of CompletionTime is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CompletionTime *time.Time `type:"timestamp"` + + // The date and time that a report job is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationTime *time.Time `type:"timestamp"` - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. + // The S3 bucket name and S3 keys for the destination where the report job publishes + // the report. + ReportDestination *ReportDestination `type:"structure"` + + // The identifier for a report job. A unique, randomly generated, Unicode, UTF-8 + // encoded string that is at most 1,024 bytes long. Report job IDs cannot be + // edited. + ReportJobId *string `type:"string"` + + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + ReportPlanArn *string `type:"string"` + + // Identifies the report template for the report. Reports are built using a + // report template. The report templates are: // - // BackupVaultName is a required field - BackupVaultName *string `location:"uri" locationName:"backupVaultName" type:"string" required:"true"` + // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT + // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + ReportTemplate *string `type:"string"` - // The Amazon Resource Name (ARN) that specifies the topic for a backup vault’s - // events; for example, arn:aws:sns:us-west-2:111122223333:MyVaultTopic. + // The status of a report job. The statuses are: // - // SNSTopicArn is a required field - SNSTopicArn *string `type:"string" required:"true"` + // CREATED | RUNNING | COMPLETED | FAILED + // + // COMPLETED means that the report is available for your review at your designated + // destination. If the status is FAILED, review the StatusMessage for the reason. + Status *string `type:"string"` + + // A message explaining the status of the report job. + StatusMessage *string `type:"string"` } // String returns the string representation. @@ -19246,7 +23186,7 @@ type PutBackupVaultNotificationsInput 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 PutBackupVaultNotificationsInput) String() string { +func (s ReportJob) String() string { return awsutil.Prettify(s) } @@ -19255,185 +23195,113 @@ func (s PutBackupVaultNotificationsInput) 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 PutBackupVaultNotificationsInput) GoString() string { +func (s ReportJob) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *PutBackupVaultNotificationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "PutBackupVaultNotificationsInput"} - if s.BackupVaultEvents == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultEvents")) - } - if s.BackupVaultName == nil { - invalidParams.Add(request.NewErrParamRequired("BackupVaultName")) - } - if s.BackupVaultName != nil && len(*s.BackupVaultName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("BackupVaultName", 1)) - } - if s.SNSTopicArn == nil { - invalidParams.Add(request.NewErrParamRequired("SNSTopicArn")) - } +// SetCompletionTime sets the CompletionTime field's value. +func (s *ReportJob) SetCompletionTime(v time.Time) *ReportJob { + s.CompletionTime = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetCreationTime sets the CreationTime field's value. +func (s *ReportJob) SetCreationTime(v time.Time) *ReportJob { + s.CreationTime = &v + return s } -// SetBackupVaultEvents sets the BackupVaultEvents field's value. -func (s *PutBackupVaultNotificationsInput) SetBackupVaultEvents(v []*string) *PutBackupVaultNotificationsInput { - s.BackupVaultEvents = v +// SetReportDestination sets the ReportDestination field's value. +func (s *ReportJob) SetReportDestination(v *ReportDestination) *ReportJob { + s.ReportDestination = v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *PutBackupVaultNotificationsInput) SetBackupVaultName(v string) *PutBackupVaultNotificationsInput { - s.BackupVaultName = &v +// SetReportJobId sets the ReportJobId field's value. +func (s *ReportJob) SetReportJobId(v string) *ReportJob { + s.ReportJobId = &v return s } -// SetSNSTopicArn sets the SNSTopicArn field's value. -func (s *PutBackupVaultNotificationsInput) SetSNSTopicArn(v string) *PutBackupVaultNotificationsInput { - s.SNSTopicArn = &v +// SetReportPlanArn sets the ReportPlanArn field's value. +func (s *ReportJob) SetReportPlanArn(v string) *ReportJob { + s.ReportPlanArn = &v return s } -type PutBackupVaultNotificationsOutput struct { - _ struct{} `type:"structure"` +// SetReportTemplate sets the ReportTemplate field's value. +func (s *ReportJob) SetReportTemplate(v string) *ReportJob { + s.ReportTemplate = &v + return s } -// 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 PutBackupVaultNotificationsOutput) String() string { - return awsutil.Prettify(s) +// SetStatus sets the Status field's value. +func (s *ReportJob) SetStatus(v string) *ReportJob { + s.Status = &v + return 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 PutBackupVaultNotificationsOutput) GoString() string { - return s.String() +// SetStatusMessage sets the StatusMessage field's value. +func (s *ReportJob) SetStatusMessage(v string) *ReportJob { + s.StatusMessage = &v + return s } -// Contains detailed information about the recovery points stored in a backup -// vault. -type RecoveryPointByBackupVault struct { +// Contains detailed information about a report plan. +type ReportPlan struct { _ struct{} `type:"structure"` - // The size, in bytes, of a backup. - BackupSizeInBytes *int64 `type:"long"` - - // An ARN that uniquely identifies a backup vault; for example, arn:aws:backup:us-east-1:123456789012:vault:aBackupVault. - BackupVaultArn *string `type:"string"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - BackupVaultName *string `type:"string"` - - // A CalculatedLifecycle object containing DeleteAt and MoveToColdStorageAt - // timestamps. - CalculatedLifecycle *CalculatedLifecycle `type:"structure"` - - // The date and time a job to restore a recovery point is completed, in Unix - // format and Coordinated Universal Time (UTC). The value of CompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // This is the identifier of a resource within a composite group, such as nested - // (child) recovery point belonging to a composite (parent) stack. The ID is - // transferred from the logical ID (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html#resources-section-structure-syntax) - // within a stack. - CompositeMemberIdentifier *string `type:"string"` - - // Contains identifying information about the creation of a recovery point, - // including the BackupPlanArn, BackupPlanId, BackupPlanVersion, and BackupRuleId - // of the backup plan that is used to create it. - CreatedBy *RecoveryPointCreator `type:"structure"` - - // The date and time a recovery point is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // The date and time that a report plan is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. // For example, the value 1516925490.087 represents Friday, January 26, 2018 // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // The server-side encryption key that is used to protect your backups; for - // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. - EncryptionKeyArn *string `type:"string"` - - // Specifies the IAM role ARN used to create the target recovery point; for - // example, arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` - - // A Boolean value that is returned as TRUE if the specified recovery point - // is encrypted, or FALSE if the recovery point is not encrypted. - IsEncrypted *bool `type:"boolean"` - - // This is a boolean value indicating this is a parent (composite) recovery - // point. - IsParent *bool `type:"boolean"` - - // The date and time a recovery point was last restored, in Unix format and - // Coordinated Universal Time (UTC). The value of LastRestoreTime is accurate - // to milliseconds. For example, the value 1516925490.087 represents Friday, - // January 26, 2018 12:11:30.087 AM. - LastRestoreTime *time.Time `type:"timestamp"` + CreationTime *time.Time `type:"timestamp"` - // The lifecycle defines when a protected resource is transitioned to cold storage - // and when it expires. Backup transitions and expires backups automatically - // according to the lifecycle that you define. - // - // Backups transitioned to cold storage must be stored in cold storage for a - // minimum of 90 days. Therefore, the “retention” setting must be 90 days - // greater than the “transition to cold after days” setting. The “transition - // to cold after days” setting cannot be changed after a backup has been transitioned - // to cold. + // The deployment status of a report plan. The statuses are: // - // Resource types that are able to be transitioned to cold storage are listed - // in the "Lifecycle to cold storage" section of the Feature availability by - // resource (https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html#features-by-resource) - // table. Backup ignores this expression for other resource types. - Lifecycle *Lifecycle `type:"structure"` - - // This is the Amazon Resource Name (ARN) of the parent (composite) recovery - // point. - ParentRecoveryPointArn *string `type:"string"` + // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED + DeploymentStatus *string `type:"string"` - // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` + // The date and time that a report job associated with this report plan last + // attempted to run, in Unix format and Coordinated Universal Time (UTC). The + // value of LastAttemptedExecutionTime is accurate to milliseconds. For example, + // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 + // AM. + LastAttemptedExecutionTime *time.Time `type:"timestamp"` - // An ARN that uniquely identifies a resource. The format of the ARN depends - // on the resource type. - ResourceArn *string `type:"string"` + // The date and time that a report job associated with this report plan last + // successfully ran, in Unix format and Coordinated Universal Time (UTC). The + // value of LastSuccessfulExecutionTime is accurate to milliseconds. For example, + // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 + // AM. + LastSuccessfulExecutionTime *time.Time `type:"timestamp"` - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` + // Contains information about where and how to deliver your reports, specifically + // your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. + ReportDeliveryChannel *ReportDeliveryChannel `type:"structure"` - // The type of Amazon Web Services resource saved as a recovery point; for example, - // an Amazon Elastic Block Store (Amazon EBS) volume or an Amazon Relational - // Database Service (Amazon RDS) database. For Windows Volume Shadow Copy Service - // (VSS) backups, the only supported resource type is Amazon EC2. - ResourceType *string `type:"string"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + ReportPlanArn *string `type:"string"` - // The backup vault where the recovery point was originally copied from. If - // the recovery point is restored to the same account this value will be null. - SourceBackupVaultArn *string `type:"string"` + // An optional description of the report plan with a maximum 1,024 characters. + ReportPlanDescription *string `type:"string"` - // A status code specifying the state of the recovery point. - Status *string `type:"string" enum:"RecoveryPointStatus"` + // The unique name of the report plan. This name is between 1 and 256 characters + // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), + // and underscores (_). + ReportPlanName *string `min:"1" type:"string"` - // A message explaining the reason of the recovery point deletion failure. - StatusMessage *string `type:"string"` + // Identifies the report template for the report. Reports are built using a + // report template. The report templates are: + // + // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT + // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + // + // If the report template is RESOURCE_COMPLIANCE_REPORT or CONTROL_COMPLIANCE_REPORT, + // this API resource also describes the report coverage by Amazon Web Services + // Regions and frameworks. + ReportSetting *ReportSetting `type:"structure"` } // String returns the string representation. @@ -19441,7 +23309,7 @@ type RecoveryPointByBackupVault 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 RecoveryPointByBackupVault) String() string { +func (s ReportPlan) String() string { return awsutil.Prettify(s) } @@ -19450,186 +23318,301 @@ func (s RecoveryPointByBackupVault) 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 RecoveryPointByBackupVault) GoString() string { +func (s ReportPlan) GoString() string { return s.String() } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *RecoveryPointByBackupVault) SetBackupSizeInBytes(v int64) *RecoveryPointByBackupVault { - s.BackupSizeInBytes = &v +// SetCreationTime sets the CreationTime field's value. +func (s *ReportPlan) SetCreationTime(v time.Time) *ReportPlan { + s.CreationTime = &v return s } -// SetBackupVaultArn sets the BackupVaultArn field's value. -func (s *RecoveryPointByBackupVault) SetBackupVaultArn(v string) *RecoveryPointByBackupVault { - s.BackupVaultArn = &v +// SetDeploymentStatus sets the DeploymentStatus field's value. +func (s *ReportPlan) SetDeploymentStatus(v string) *ReportPlan { + s.DeploymentStatus = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *RecoveryPointByBackupVault) SetBackupVaultName(v string) *RecoveryPointByBackupVault { - s.BackupVaultName = &v +// SetLastAttemptedExecutionTime sets the LastAttemptedExecutionTime field's value. +func (s *ReportPlan) SetLastAttemptedExecutionTime(v time.Time) *ReportPlan { + s.LastAttemptedExecutionTime = &v return s } -// SetCalculatedLifecycle sets the CalculatedLifecycle field's value. -func (s *RecoveryPointByBackupVault) SetCalculatedLifecycle(v *CalculatedLifecycle) *RecoveryPointByBackupVault { - s.CalculatedLifecycle = v +// SetLastSuccessfulExecutionTime sets the LastSuccessfulExecutionTime field's value. +func (s *ReportPlan) SetLastSuccessfulExecutionTime(v time.Time) *ReportPlan { + s.LastSuccessfulExecutionTime = &v return s } -// SetCompletionDate sets the CompletionDate field's value. -func (s *RecoveryPointByBackupVault) SetCompletionDate(v time.Time) *RecoveryPointByBackupVault { - s.CompletionDate = &v +// SetReportDeliveryChannel sets the ReportDeliveryChannel field's value. +func (s *ReportPlan) SetReportDeliveryChannel(v *ReportDeliveryChannel) *ReportPlan { + s.ReportDeliveryChannel = v return s } -// SetCompositeMemberIdentifier sets the CompositeMemberIdentifier field's value. -func (s *RecoveryPointByBackupVault) SetCompositeMemberIdentifier(v string) *RecoveryPointByBackupVault { - s.CompositeMemberIdentifier = &v +// SetReportPlanArn sets the ReportPlanArn field's value. +func (s *ReportPlan) SetReportPlanArn(v string) *ReportPlan { + s.ReportPlanArn = &v return s } -// SetCreatedBy sets the CreatedBy field's value. -func (s *RecoveryPointByBackupVault) SetCreatedBy(v *RecoveryPointCreator) *RecoveryPointByBackupVault { - s.CreatedBy = v +// SetReportPlanDescription sets the ReportPlanDescription field's value. +func (s *ReportPlan) SetReportPlanDescription(v string) *ReportPlan { + s.ReportPlanDescription = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *RecoveryPointByBackupVault) SetCreationDate(v time.Time) *RecoveryPointByBackupVault { - s.CreationDate = &v +// SetReportPlanName sets the ReportPlanName field's value. +func (s *ReportPlan) SetReportPlanName(v string) *ReportPlan { + s.ReportPlanName = &v return s } -// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. -func (s *RecoveryPointByBackupVault) SetEncryptionKeyArn(v string) *RecoveryPointByBackupVault { - s.EncryptionKeyArn = &v +// SetReportSetting sets the ReportSetting field's value. +func (s *ReportPlan) SetReportSetting(v *ReportSetting) *ReportPlan { + s.ReportSetting = v return s } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *RecoveryPointByBackupVault) SetIamRoleArn(v string) *RecoveryPointByBackupVault { - s.IamRoleArn = &v - return s +// Contains detailed information about a report setting. +type ReportSetting struct { + _ struct{} `type:"structure"` + + // These are the accounts to be included in the report. + Accounts []*string `type:"list"` + + // The Amazon Resource Names (ARNs) of the frameworks a report covers. + FrameworkArns []*string `type:"list"` + + // The number of frameworks a report covers. + NumberOfFrameworks *int64 `type:"integer"` + + // These are the Organizational Units to be included in the report. + OrganizationUnits []*string `type:"list"` + + // These are the Regions to be included in the report. + Regions []*string `type:"list"` + + // Identifies the report template for the report. Reports are built using a + // report template. The report templates are: + // + // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT + // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + // + // ReportTemplate is a required field + ReportTemplate *string `type:"string" required:"true"` } -// SetIsEncrypted sets the IsEncrypted field's value. -func (s *RecoveryPointByBackupVault) SetIsEncrypted(v bool) *RecoveryPointByBackupVault { - s.IsEncrypted = &v - return s +// 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 ReportSetting) String() string { + return awsutil.Prettify(s) } -// SetIsParent sets the IsParent field's value. -func (s *RecoveryPointByBackupVault) SetIsParent(v bool) *RecoveryPointByBackupVault { - s.IsParent = &v - return 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 ReportSetting) GoString() string { + return s.String() } -// SetLastRestoreTime sets the LastRestoreTime field's value. -func (s *RecoveryPointByBackupVault) SetLastRestoreTime(v time.Time) *RecoveryPointByBackupVault { - s.LastRestoreTime = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReportSetting) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReportSetting"} + if s.ReportTemplate == nil { + invalidParams.Add(request.NewErrParamRequired("ReportTemplate")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetLifecycle sets the Lifecycle field's value. -func (s *RecoveryPointByBackupVault) SetLifecycle(v *Lifecycle) *RecoveryPointByBackupVault { - s.Lifecycle = v +// SetAccounts sets the Accounts field's value. +func (s *ReportSetting) SetAccounts(v []*string) *ReportSetting { + s.Accounts = v return s } -// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. -func (s *RecoveryPointByBackupVault) SetParentRecoveryPointArn(v string) *RecoveryPointByBackupVault { - s.ParentRecoveryPointArn = &v +// SetFrameworkArns sets the FrameworkArns field's value. +func (s *ReportSetting) SetFrameworkArns(v []*string) *ReportSetting { + s.FrameworkArns = v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *RecoveryPointByBackupVault) SetRecoveryPointArn(v string) *RecoveryPointByBackupVault { - s.RecoveryPointArn = &v +// SetNumberOfFrameworks sets the NumberOfFrameworks field's value. +func (s *ReportSetting) SetNumberOfFrameworks(v int64) *ReportSetting { + s.NumberOfFrameworks = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *RecoveryPointByBackupVault) SetResourceArn(v string) *RecoveryPointByBackupVault { - s.ResourceArn = &v +// SetOrganizationUnits sets the OrganizationUnits field's value. +func (s *ReportSetting) SetOrganizationUnits(v []*string) *ReportSetting { + s.OrganizationUnits = v return s } -// SetResourceName sets the ResourceName field's value. -func (s *RecoveryPointByBackupVault) SetResourceName(v string) *RecoveryPointByBackupVault { - s.ResourceName = &v +// SetRegions sets the Regions field's value. +func (s *ReportSetting) SetRegions(v []*string) *ReportSetting { + s.Regions = v return s } -// SetResourceType sets the ResourceType field's value. -func (s *RecoveryPointByBackupVault) SetResourceType(v string) *RecoveryPointByBackupVault { - s.ResourceType = &v +// SetReportTemplate sets the ReportTemplate field's value. +func (s *ReportSetting) SetReportTemplate(v string) *ReportSetting { + s.ReportTemplate = &v return s } -// SetSourceBackupVaultArn sets the SourceBackupVaultArn field's value. -func (s *RecoveryPointByBackupVault) SetSourceBackupVaultArn(v string) *RecoveryPointByBackupVault { - s.SourceBackupVaultArn = &v - return s +// A resource that is required for the action doesn't exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Code_ *string `locationName:"Code" type:"string"` + + Context *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` + + Type *string `type:"string"` } -// SetStatus sets the Status field's value. -func (s *RecoveryPointByBackupVault) SetStatus(v string) *RecoveryPointByBackupVault { - s.Status = &v - return s +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Contains information about the restore testing plan that Backup used to initiate +// the restore job. +type RestoreJobCreator struct { + _ struct{} `type:"structure"` + + // An Amazon Resource Name (ARN) that uniquely identifies a restore testing + // plan. + RestoreTestingPlanArn *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 RestoreJobCreator) 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 RestoreJobCreator) GoString() string { + return s.String() } -// SetStatusMessage sets the StatusMessage field's value. -func (s *RecoveryPointByBackupVault) SetStatusMessage(v string) *RecoveryPointByBackupVault { - s.StatusMessage = &v +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreJobCreator) SetRestoreTestingPlanArn(v string) *RestoreJobCreator { + s.RestoreTestingPlanArn = &v return s } -// Contains detailed information about a saved recovery point. -type RecoveryPointByResource struct { +// This is a summary of restore jobs created or running within the most recent +// 30 days. +// +// The returned summary may contain the following: Region, Account, State, ResourceType, +// MessageCategory, StartTime, EndTime, and Count of included jobs. +type RestoreJobSummary struct { _ struct{} `type:"structure"` - // The size, in bytes, of a backup. - BackupSizeBytes *int64 `type:"long"` - - // The name of a logical container where backups are stored. Backup vaults are - // identified by names that are unique to the account used to create them and - // the Amazon Web Services Region where they are created. They consist of lowercase - // letters, numbers, and hyphens. - BackupVaultName *string `type:"string"` - - // The date and time a recovery point is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` - - // The server-side encryption key that is used to protect your backups; for - // example, arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab. - EncryptionKeyArn *string `type:"string"` + // The account ID that owns the jobs within the summary. + AccountId *string `type:"string"` - // This is a boolean value indicating this is a parent (composite) recovery - // point. - IsParent *bool `type:"boolean"` + // The value as a number of jobs in a job summary. + Count *int64 `type:"integer"` - // This is the Amazon Resource Name (ARN) of the parent (composite) recovery - // point. - ParentRecoveryPointArn *string `type:"string"` + // The value of time in number format of a job end time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + EndTime *time.Time `type:"timestamp"` - // An Amazon Resource Name (ARN) that uniquely identifies a recovery point; - // for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` + // The Amazon Web Services Regions within the job summary. + Region *string `type:"string"` - // This is the non-unique name of the resource that belongs to the specified - // backup. - ResourceName *string `type:"string"` + // This value is the job count for the specified resource type. The request + // GetSupportedResourceTypes returns strings for supported resource types. + ResourceType *string `type:"string"` - // A status code specifying the state of the recovery point. - Status *string `type:"string" enum:"RecoveryPointStatus"` + // The value of time in number format of a job start time. + // + // This value is the time in Unix format, Coordinated Universal Time (UTC), + // and accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + StartTime *time.Time `type:"timestamp"` - // A message explaining the reason of the recovery point deletion failure. - StatusMessage *string `type:"string"` + // This value is job count for jobs with the specified state. + State *string `type:"string" enum:"RestoreJobState"` } // String returns the string representation. @@ -19637,7 +23620,7 @@ type RecoveryPointByResource 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 RecoveryPointByResource) String() string { +func (s RestoreJobSummary) String() string { return awsutil.Prettify(s) } @@ -19646,89 +23629,128 @@ func (s RecoveryPointByResource) 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 RecoveryPointByResource) GoString() string { +func (s RestoreJobSummary) GoString() string { return s.String() } -// SetBackupSizeBytes sets the BackupSizeBytes field's value. -func (s *RecoveryPointByResource) SetBackupSizeBytes(v int64) *RecoveryPointByResource { - s.BackupSizeBytes = &v +// SetAccountId sets the AccountId field's value. +func (s *RestoreJobSummary) SetAccountId(v string) *RestoreJobSummary { + s.AccountId = &v return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *RecoveryPointByResource) SetBackupVaultName(v string) *RecoveryPointByResource { - s.BackupVaultName = &v +// SetCount sets the Count field's value. +func (s *RestoreJobSummary) SetCount(v int64) *RestoreJobSummary { + s.Count = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *RecoveryPointByResource) SetCreationDate(v time.Time) *RecoveryPointByResource { - s.CreationDate = &v +// SetEndTime sets the EndTime field's value. +func (s *RestoreJobSummary) SetEndTime(v time.Time) *RestoreJobSummary { + s.EndTime = &v return s } -// SetEncryptionKeyArn sets the EncryptionKeyArn field's value. -func (s *RecoveryPointByResource) SetEncryptionKeyArn(v string) *RecoveryPointByResource { - s.EncryptionKeyArn = &v +// SetRegion sets the Region field's value. +func (s *RestoreJobSummary) SetRegion(v string) *RestoreJobSummary { + s.Region = &v return s } -// SetIsParent sets the IsParent field's value. -func (s *RecoveryPointByResource) SetIsParent(v bool) *RecoveryPointByResource { - s.IsParent = &v +// SetResourceType sets the ResourceType field's value. +func (s *RestoreJobSummary) SetResourceType(v string) *RestoreJobSummary { + s.ResourceType = &v return s } -// SetParentRecoveryPointArn sets the ParentRecoveryPointArn field's value. -func (s *RecoveryPointByResource) SetParentRecoveryPointArn(v string) *RecoveryPointByResource { - s.ParentRecoveryPointArn = &v +// SetStartTime sets the StartTime field's value. +func (s *RestoreJobSummary) SetStartTime(v time.Time) *RestoreJobSummary { + s.StartTime = &v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *RecoveryPointByResource) SetRecoveryPointArn(v string) *RecoveryPointByResource { - s.RecoveryPointArn = &v +// SetState sets the State field's value. +func (s *RestoreJobSummary) SetState(v string) *RestoreJobSummary { + s.State = &v return s } -// SetResourceName sets the ResourceName field's value. -func (s *RecoveryPointByResource) SetResourceName(v string) *RecoveryPointByResource { - s.ResourceName = &v - return s -} +// Contains metadata about a restore job. +type RestoreJobsListMember struct { + _ struct{} `type:"structure"` -// SetStatus sets the Status field's value. -func (s *RecoveryPointByResource) SetStatus(v string) *RecoveryPointByResource { - s.Status = &v - return s -} + // The account ID that owns the restore job. + AccountId *string `type:"string"` -// SetStatusMessage sets the StatusMessage field's value. -func (s *RecoveryPointByResource) SetStatusMessage(v string) *RecoveryPointByResource { - s.StatusMessage = &v - return s -} + // The size, in bytes, of the restored resource. + BackupSizeInBytes *int64 `type:"long"` -// Contains information about the backup plan and rule that Backup used to initiate -// the recovery point backup. -type RecoveryPointCreator struct { - _ struct{} `type:"structure"` + // The date and time a job to restore a recovery point is completed, in Unix + // format and Coordinated Universal Time (UTC). The value of CompletionDate + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + CompletionDate *time.Time `type:"timestamp"` - // An Amazon Resource Name (ARN) that uniquely identifies a backup plan; for - // example, arn:aws:backup:us-east-1:123456789012:plan:8F81F553-3A74-4A3F-B93D-B3360DC80C50. - BackupPlanArn *string `type:"string"` + // Contains identifying information about the creation of a restore job. + CreatedBy *RestoreJobCreator `type:"structure"` - // Uniquely identifies a backup plan. - BackupPlanId *string `type:"string"` + // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format + // of the ARN depends on the resource type. + CreatedResourceArn *string `type:"string"` - // Version IDs are unique, randomly generated, Unicode, UTF-8 encoded strings - // that are at most 1,024 bytes long. They cannot be edited. - BackupPlanVersion *string `type:"string"` + // The date and time a restore job is created, in Unix format and Coordinated + // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. + // For example, the value 1516925490.087 represents Friday, January 26, 2018 + // 12:11:30.087 AM. + CreationDate *time.Time `type:"timestamp"` - // Uniquely identifies a rule used to schedule the backup of a selection of - // resources. - BackupRuleId *string `type:"string"` + // This notes the status of the data generated by the restore test. The status + // may be Deleting, Failed, or Successful. + DeletionStatus *string `type:"string" enum:"RestoreDeletionStatus"` + + // This describes the restore job deletion status. + DeletionStatusMessage *string `type:"string"` + + // The amount of time in minutes that a job restoring a recovery point is expected + // to take. + ExpectedCompletionTimeMinutes *int64 `type:"long"` + + // Specifies the IAM role ARN used to create the target recovery point; for + // example, arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // Contains an estimated percentage complete of a job at the time the job status + // was queried. + PercentDone *string `type:"string"` + + // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. + RecoveryPointArn *string `type:"string"` + + // The date on which a recovery point was created. + RecoveryPointCreationDate *time.Time `type:"timestamp"` + + // The resource type of the listed restore jobs; for example, an Amazon Elastic + // Block Store (Amazon EBS) volume or an Amazon Relational Database Service + // (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, + // the only supported resource type is Amazon EC2. + ResourceType *string `type:"string"` + + // Uniquely identifies the job that restores a recovery point. + RestoreJobId *string `type:"string"` + + // A status code specifying the state of the job initiated by Backup to restore + // a recovery point. + Status *string `type:"string" enum:"RestoreJobStatus"` + + // A detailed message explaining the status of the job to restore a recovery + // point. + StatusMessage *string `type:"string"` + + // This is the status of validation run on the indicated restore job. + ValidationStatus *string `type:"string" enum:"RestoreValidationStatus"` + + // This describes the status of validation run on the indicated restore job. + ValidationStatusMessage *string `type:"string"` } // String returns the string representation. @@ -19736,7 +23758,7 @@ type RecoveryPointCreator 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 RecoveryPointCreator) String() string { +func (s RestoreJobsListMember) String() string { return awsutil.Prettify(s) } @@ -19745,192 +23767,158 @@ func (s RecoveryPointCreator) 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 RecoveryPointCreator) GoString() string { +func (s RestoreJobsListMember) GoString() string { return s.String() } -// SetBackupPlanArn sets the BackupPlanArn field's value. -func (s *RecoveryPointCreator) SetBackupPlanArn(v string) *RecoveryPointCreator { - s.BackupPlanArn = &v - return s -} - -// SetBackupPlanId sets the BackupPlanId field's value. -func (s *RecoveryPointCreator) SetBackupPlanId(v string) *RecoveryPointCreator { - s.BackupPlanId = &v - return s -} - -// SetBackupPlanVersion sets the BackupPlanVersion field's value. -func (s *RecoveryPointCreator) SetBackupPlanVersion(v string) *RecoveryPointCreator { - s.BackupPlanVersion = &v +// SetAccountId sets the AccountId field's value. +func (s *RestoreJobsListMember) SetAccountId(v string) *RestoreJobsListMember { + s.AccountId = &v return s } -// SetBackupRuleId sets the BackupRuleId field's value. -func (s *RecoveryPointCreator) SetBackupRuleId(v string) *RecoveryPointCreator { - s.BackupRuleId = &v +// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. +func (s *RestoreJobsListMember) SetBackupSizeInBytes(v int64) *RestoreJobsListMember { + s.BackupSizeInBytes = &v return s } -// This is a recovery point which is a child (nested) recovery point of a parent -// (composite) recovery point. These recovery points can be disassociated from -// their parent (composite) recovery point, in which case they will no longer -// be a member. -type RecoveryPointMember struct { - _ struct{} `type:"structure"` - - // This is the name of the backup vault (the logical container in which backups - // are stored). - BackupVaultName *string `type:"string"` - - // This is the Amazon Resource Name (ARN) of the parent (composite) recovery - // point. - RecoveryPointArn *string `type:"string"` - - // This is the Amazon Resource Name (ARN) that uniquely identifies a saved resource. - ResourceArn *string `type:"string"` - - // This is the Amazon Web Services resource type that is saved as a recovery - // point. - ResourceType *string `type:"string"` +// SetCompletionDate sets the CompletionDate field's value. +func (s *RestoreJobsListMember) SetCompletionDate(v time.Time) *RestoreJobsListMember { + s.CompletionDate = &v + return s } -// 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 RecoveryPointMember) String() string { - return awsutil.Prettify(s) +// SetCreatedBy sets the CreatedBy field's value. +func (s *RestoreJobsListMember) SetCreatedBy(v *RestoreJobCreator) *RestoreJobsListMember { + s.CreatedBy = v + return 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 RecoveryPointMember) GoString() string { - return s.String() +// SetCreatedResourceArn sets the CreatedResourceArn field's value. +func (s *RestoreJobsListMember) SetCreatedResourceArn(v string) *RestoreJobsListMember { + s.CreatedResourceArn = &v + return s } -// SetBackupVaultName sets the BackupVaultName field's value. -func (s *RecoveryPointMember) SetBackupVaultName(v string) *RecoveryPointMember { - s.BackupVaultName = &v +// SetCreationDate sets the CreationDate field's value. +func (s *RestoreJobsListMember) SetCreationDate(v time.Time) *RestoreJobsListMember { + s.CreationDate = &v return s } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *RecoveryPointMember) SetRecoveryPointArn(v string) *RecoveryPointMember { - s.RecoveryPointArn = &v +// SetDeletionStatus sets the DeletionStatus field's value. +func (s *RestoreJobsListMember) SetDeletionStatus(v string) *RestoreJobsListMember { + s.DeletionStatus = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *RecoveryPointMember) SetResourceArn(v string) *RecoveryPointMember { - s.ResourceArn = &v +// SetDeletionStatusMessage sets the DeletionStatusMessage field's value. +func (s *RestoreJobsListMember) SetDeletionStatusMessage(v string) *RestoreJobsListMember { + s.DeletionStatusMessage = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *RecoveryPointMember) SetResourceType(v string) *RecoveryPointMember { - s.ResourceType = &v +// SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. +func (s *RestoreJobsListMember) SetExpectedCompletionTimeMinutes(v int64) *RestoreJobsListMember { + s.ExpectedCompletionTimeMinutes = &v return s } -// This specifies criteria to assign a set of resources, such as resource types -// or backup vaults. -type RecoveryPointSelection struct { - _ struct{} `type:"structure"` - - // This is a resource filter containing FromDate: DateTime and ToDate: DateTime. - // Both values are required. Future DateTime values are not permitted. - // - // The date and time are in Unix format and Coordinated Universal Time (UTC), - // and it is accurate to milliseconds ((milliseconds are optional). For example, - // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 - // AM. - DateRange *DateRange `type:"structure"` +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreJobsListMember) SetIamRoleArn(v string) *RestoreJobsListMember { + s.IamRoleArn = &v + return s +} - // These are the resources included in the resource selection (including type - // of resources and vaults). - ResourceIdentifiers []*string `type:"list"` +// SetPercentDone sets the PercentDone field's value. +func (s *RestoreJobsListMember) SetPercentDone(v string) *RestoreJobsListMember { + s.PercentDone = &v + return s +} - // These are the names of the vaults in which the selected recovery points are - // contained. - VaultNames []*string `type:"list"` +// SetRecoveryPointArn sets the RecoveryPointArn field's value. +func (s *RestoreJobsListMember) SetRecoveryPointArn(v string) *RestoreJobsListMember { + s.RecoveryPointArn = &v + return s } -// 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 RecoveryPointSelection) String() string { - return awsutil.Prettify(s) +// SetRecoveryPointCreationDate sets the RecoveryPointCreationDate field's value. +func (s *RestoreJobsListMember) SetRecoveryPointCreationDate(v time.Time) *RestoreJobsListMember { + s.RecoveryPointCreationDate = &v + return 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 RecoveryPointSelection) GoString() string { - return s.String() +// SetResourceType sets the ResourceType field's value. +func (s *RestoreJobsListMember) SetResourceType(v string) *RestoreJobsListMember { + s.ResourceType = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *RecoveryPointSelection) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "RecoveryPointSelection"} - if s.DateRange != nil { - if err := s.DateRange.Validate(); err != nil { - invalidParams.AddNested("DateRange", err.(request.ErrInvalidParams)) - } - } +// SetRestoreJobId sets the RestoreJobId field's value. +func (s *RestoreJobsListMember) SetRestoreJobId(v string) *RestoreJobsListMember { + s.RestoreJobId = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetStatus sets the Status field's value. +func (s *RestoreJobsListMember) SetStatus(v string) *RestoreJobsListMember { + s.Status = &v + return s } -// SetDateRange sets the DateRange field's value. -func (s *RecoveryPointSelection) SetDateRange(v *DateRange) *RecoveryPointSelection { - s.DateRange = v +// SetStatusMessage sets the StatusMessage field's value. +func (s *RestoreJobsListMember) SetStatusMessage(v string) *RestoreJobsListMember { + s.StatusMessage = &v return s } -// SetResourceIdentifiers sets the ResourceIdentifiers field's value. -func (s *RecoveryPointSelection) SetResourceIdentifiers(v []*string) *RecoveryPointSelection { - s.ResourceIdentifiers = v +// SetValidationStatus sets the ValidationStatus field's value. +func (s *RestoreJobsListMember) SetValidationStatus(v string) *RestoreJobsListMember { + s.ValidationStatus = &v return s } -// SetVaultNames sets the VaultNames field's value. -func (s *RecoveryPointSelection) SetVaultNames(v []*string) *RecoveryPointSelection { - s.VaultNames = v +// SetValidationStatusMessage sets the ValidationStatusMessage field's value. +func (s *RestoreJobsListMember) SetValidationStatusMessage(v string) *RestoreJobsListMember { + s.ValidationStatusMessage = &v return s } -// Contains information from your report plan about where to deliver your reports, -// specifically your Amazon S3 bucket name, S3 key prefix, and the formats of -// your reports. -type ReportDeliveryChannel struct { +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForCreate struct { _ struct{} `type:"structure"` - // A list of the format of your reports: CSV, JSON, or both. If not specified, - // the default format is CSV. - Formats []*string `type:"list"` + // Required: Algorithm; Required: Recovery point types; IncludeVaults (one or + // more). Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults + // (list of selectors), defaults to empty list if not listed. + // + // RecoveryPointSelection is a required field + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure" required:"true"` - // The unique name of the S3 bucket that receives your reports. + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. This cannot be changed after creation, and it must consist + // of only alphanumeric characters and underscores. // - // S3BucketName is a required field - S3BucketName *string `type:"string" required:"true"` + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` - // The prefix for where Backup Audit Manager delivers your reports to Amazon - // S3. The prefix is this part of the following path: s3://your-bucket-name/prefix/Backup/us-west-2/year/month/day/report-name. - // If not specified, there is no prefix. - S3KeyPrefix *string `type:"string"` + // A CRON expression in specified timezone when a restore testing plan is executed. + // + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` + + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -19938,7 +23926,7 @@ type ReportDeliveryChannel 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 ReportDeliveryChannel) String() string { +func (s RestoreTestingPlanForCreate) String() string { return awsutil.Prettify(s) } @@ -19947,15 +23935,21 @@ func (s ReportDeliveryChannel) 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 ReportDeliveryChannel) GoString() string { +func (s RestoreTestingPlanForCreate) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ReportDeliveryChannel) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ReportDeliveryChannel"} - if s.S3BucketName == nil { - invalidParams.Add(request.NewErrParamRequired("S3BucketName")) +func (s *RestoreTestingPlanForCreate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingPlanForCreate"} + if s.RecoveryPointSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointSelection")) + } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.ScheduleExpression == nil { + invalidParams.Add(request.NewErrParamRequired("ScheduleExpression")) } if invalidParams.Len() > 0 { @@ -19964,112 +23958,101 @@ func (s *ReportDeliveryChannel) Validate() error { return nil } -// SetFormats sets the Formats field's value. -func (s *ReportDeliveryChannel) SetFormats(v []*string) *ReportDeliveryChannel { - s.Formats = v +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForCreate) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForCreate { + s.RecoveryPointSelection = v return s } -// SetS3BucketName sets the S3BucketName field's value. -func (s *ReportDeliveryChannel) SetS3BucketName(v string) *ReportDeliveryChannel { - s.S3BucketName = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForCreate) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForCreate { + s.RestoreTestingPlanName = &v return s } -// SetS3KeyPrefix sets the S3KeyPrefix field's value. -func (s *ReportDeliveryChannel) SetS3KeyPrefix(v string) *ReportDeliveryChannel { - s.S3KeyPrefix = &v +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForCreate) SetScheduleExpression(v string) *RestoreTestingPlanForCreate { + s.ScheduleExpression = &v return s } -// Contains information from your report job about your report destination. -type ReportDestination struct { - _ struct{} `type:"structure"` - - // The unique name of the Amazon S3 bucket that receives your reports. - S3BucketName *string `type:"string"` - - // The object key that uniquely identifies your reports in your S3 bucket. - S3Keys []*string `type:"list"` -} - -// String returns the string representation. -// -// API parameter values that are decorated as "sensitive" in the API will not -// be included in the string output. The member name will be present, but the -// value will be replaced with "sensitive". -func (s ReportDestination) 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 ReportDestination) GoString() string { - return s.String() -} - -// SetS3BucketName sets the S3BucketName field's value. -func (s *ReportDestination) SetS3BucketName(v string) *ReportDestination { - s.S3BucketName = &v +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForCreate) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForCreate { + s.ScheduleExpressionTimezone = &v return s } -// SetS3Keys sets the S3Keys field's value. -func (s *ReportDestination) SetS3Keys(v []*string) *ReportDestination { - s.S3Keys = v +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForCreate) SetStartWindowHours(v int64) *RestoreTestingPlanForCreate { + s.StartWindowHours = &v return s } -// Contains detailed information about a report job. A report job compiles a -// report based on a report plan and publishes it to Amazon S3. -type ReportJob struct { +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForGet struct { _ struct{} `type:"structure"` - // The date and time that a report job is completed, in Unix format and Coordinated - // Universal Time (UTC). The value of CompletionTime is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CompletionTime *time.Time `type:"timestamp"` + // The date and time that a restore testing plan was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` - // The date and time that a report job is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationTime *time.Time `type:"timestamp"` + // This identifies the request and allows failed requests to be retried without + // the risk of running the operation twice. If the request includes a CreatorRequestId + // that matches an existing backup plan, that plan is returned. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` - // The S3 bucket name and S3 keys for the destination where the report job publishes - // the report. - ReportDestination *ReportDestination `type:"structure"` + // The last time a restore test was run with the specified restore testing plan. + // A date and time, in Unix format and Coordinated Universal Time (UTC). The + // value of LastExecutionDate is accurate to milliseconds. For example, the + // value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionTime *time.Time `type:"timestamp"` - // The identifier for a report job. A unique, randomly generated, Unicode, UTF-8 - // encoded string that is at most 1,024 bytes long. Report job IDs cannot be - // edited. - ReportJobId *string `type:"string"` + // The date and time that the restore testing plan was updated. This update + // is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + LastUpdateTime *time.Time `type:"timestamp"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - ReportPlanArn *string `type:"string"` + // The specified criteria to assign a set of resources, such as recovery point + // types or backup vaults. + // + // RecoveryPointSelection is a required field + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure" required:"true"` - // Identifies the report template for the report. Reports are built using a - // report template. The report templates are: + // An Amazon Resource Name (ARN) that uniquely identifies a restore testing + // plan. // - // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT - // | COPY_JOB_REPORT | RESTORE_JOB_REPORT - ReportTemplate *string `type:"string"` + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` - // The status of a report job. The statuses are: + // This is the restore testing plan name. // - // CREATED | RUNNING | COMPLETED | FAILED + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // A CRON expression in specified timezone when a restore testing plan is executed. // - // COMPLETED means that the report is available for your review at your designated - // destination. If the status is FAILED, review the StatusMessage for the reason. - Status *string `type:"string"` + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` - // A message explaining the status of the report job. - StatusMessage *string `type:"string"` + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` + + // Defaults to 24 hours. + // + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20077,7 +24060,7 @@ type ReportJob 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 ReportJob) String() string { +func (s RestoreTestingPlanForGet) String() string { return awsutil.Prettify(s) } @@ -20086,113 +24069,120 @@ func (s ReportJob) 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 ReportJob) GoString() string { +func (s RestoreTestingPlanForGet) GoString() string { return s.String() } -// SetCompletionTime sets the CompletionTime field's value. -func (s *ReportJob) SetCompletionTime(v time.Time) *ReportJob { - s.CompletionTime = &v +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingPlanForGet) SetCreationTime(v time.Time) *RestoreTestingPlanForGet { + s.CreationTime = &v return s } -// SetCreationTime sets the CreationTime field's value. -func (s *ReportJob) SetCreationTime(v time.Time) *ReportJob { - s.CreationTime = &v +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *RestoreTestingPlanForGet) SetCreatorRequestId(v string) *RestoreTestingPlanForGet { + s.CreatorRequestId = &v return s } -// SetReportDestination sets the ReportDestination field's value. -func (s *ReportJob) SetReportDestination(v *ReportDestination) *ReportJob { - s.ReportDestination = v +// SetLastExecutionTime sets the LastExecutionTime field's value. +func (s *RestoreTestingPlanForGet) SetLastExecutionTime(v time.Time) *RestoreTestingPlanForGet { + s.LastExecutionTime = &v return s } -// SetReportJobId sets the ReportJobId field's value. -func (s *ReportJob) SetReportJobId(v string) *ReportJob { - s.ReportJobId = &v +// SetLastUpdateTime sets the LastUpdateTime field's value. +func (s *RestoreTestingPlanForGet) SetLastUpdateTime(v time.Time) *RestoreTestingPlanForGet { + s.LastUpdateTime = &v return s } -// SetReportPlanArn sets the ReportPlanArn field's value. -func (s *ReportJob) SetReportPlanArn(v string) *ReportJob { - s.ReportPlanArn = &v +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForGet) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForGet { + s.RecoveryPointSelection = v return s } -// SetReportTemplate sets the ReportTemplate field's value. -func (s *ReportJob) SetReportTemplate(v string) *ReportJob { - s.ReportTemplate = &v +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreTestingPlanForGet) SetRestoreTestingPlanArn(v string) *RestoreTestingPlanForGet { + s.RestoreTestingPlanArn = &v return s } -// SetStatus sets the Status field's value. -func (s *ReportJob) SetStatus(v string) *ReportJob { - s.Status = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForGet) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForGet { + s.RestoreTestingPlanName = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *ReportJob) SetStatusMessage(v string) *ReportJob { - s.StatusMessage = &v +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForGet) SetScheduleExpression(v string) *RestoreTestingPlanForGet { + s.ScheduleExpression = &v return s } -// Contains detailed information about a report plan. -type ReportPlan struct { - _ struct{} `type:"structure"` +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForGet) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForGet { + s.ScheduleExpressionTimezone = &v + return s +} - // The date and time that a report plan is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationTime is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationTime *time.Time `type:"timestamp"` +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForGet) SetStartWindowHours(v int64) *RestoreTestingPlanForGet { + s.StartWindowHours = &v + return s +} - // The deployment status of a report plan. The statuses are: +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForList struct { + _ struct{} `type:"structure"` + + // The date and time that a restore testing plan was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 2018 12:11:30.087 AM. // - // CREATE_IN_PROGRESS | UPDATE_IN_PROGRESS | DELETE_IN_PROGRESS | COMPLETED - DeploymentStatus *string `type:"string"` + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` - // The date and time that a report job associated with this report plan last - // attempted to run, in Unix format and Coordinated Universal Time (UTC). The - // value of LastAttemptedExecutionTime is accurate to milliseconds. For example, - // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 - // AM. - LastAttemptedExecutionTime *time.Time `type:"timestamp"` + // The last time a restore test was run with the specified restore testing plan. + // A date and time, in Unix format and Coordinated Universal Time (UTC). The + // value of LastExecutionDate is accurate to milliseconds. For example, the + // value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM. + LastExecutionTime *time.Time `type:"timestamp"` - // The date and time that a report job associated with this report plan last - // successfully ran, in Unix format and Coordinated Universal Time (UTC). The - // value of LastSuccessfulExecutionTime is accurate to milliseconds. For example, - // the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 - // AM. - LastSuccessfulExecutionTime *time.Time `type:"timestamp"` + // The date and time that the restore testing plan was updated. This update + // is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26, 2018 12:11:30.087 AM. + LastUpdateTime *time.Time `type:"timestamp"` - // Contains information about where and how to deliver your reports, specifically - // your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. - ReportDeliveryChannel *ReportDeliveryChannel `type:"structure"` + // An Amazon Resource Name (ARN) that uniquely identifiesa restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - ReportPlanArn *string `type:"string"` + // This is the restore testing plan name. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` - // An optional description of the report plan with a maximum 1,024 characters. - ReportPlanDescription *string `type:"string"` + // A CRON expression in specified timezone when a restore testing plan is executed. + // + // ScheduleExpression is a required field + ScheduleExpression *string `type:"string" required:"true"` - // The unique name of the report plan. This name is between 1 and 256 characters - // starting with a letter, and consisting of letters (a-z, A-Z), numbers (0-9), - // and underscores (_). - ReportPlanName *string `min:"1" type:"string"` + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` - // Identifies the report template for the report. Reports are built using a - // report template. The report templates are: - // - // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT - // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + // Defaults to 24 hours. // - // If the report template is RESOURCE_COMPLIANCE_REPORT or CONTROL_COMPLIANCE_REPORT, - // this API resource also describes the report coverage by Amazon Web Services - // Regions and frameworks. - ReportSetting *ReportSetting `type:"structure"` + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20200,7 +24190,7 @@ type ReportPlan 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 ReportPlan) String() string { +func (s RestoreTestingPlanForList) String() string { return awsutil.Prettify(s) } @@ -20209,91 +24199,82 @@ func (s ReportPlan) 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 ReportPlan) GoString() string { +func (s RestoreTestingPlanForList) GoString() string { return s.String() } // SetCreationTime sets the CreationTime field's value. -func (s *ReportPlan) SetCreationTime(v time.Time) *ReportPlan { +func (s *RestoreTestingPlanForList) SetCreationTime(v time.Time) *RestoreTestingPlanForList { s.CreationTime = &v return s } -// SetDeploymentStatus sets the DeploymentStatus field's value. -func (s *ReportPlan) SetDeploymentStatus(v string) *ReportPlan { - s.DeploymentStatus = &v - return s -} - -// SetLastAttemptedExecutionTime sets the LastAttemptedExecutionTime field's value. -func (s *ReportPlan) SetLastAttemptedExecutionTime(v time.Time) *ReportPlan { - s.LastAttemptedExecutionTime = &v +// SetLastExecutionTime sets the LastExecutionTime field's value. +func (s *RestoreTestingPlanForList) SetLastExecutionTime(v time.Time) *RestoreTestingPlanForList { + s.LastExecutionTime = &v return s } -// SetLastSuccessfulExecutionTime sets the LastSuccessfulExecutionTime field's value. -func (s *ReportPlan) SetLastSuccessfulExecutionTime(v time.Time) *ReportPlan { - s.LastSuccessfulExecutionTime = &v +// SetLastUpdateTime sets the LastUpdateTime field's value. +func (s *RestoreTestingPlanForList) SetLastUpdateTime(v time.Time) *RestoreTestingPlanForList { + s.LastUpdateTime = &v return s } -// SetReportDeliveryChannel sets the ReportDeliveryChannel field's value. -func (s *ReportPlan) SetReportDeliveryChannel(v *ReportDeliveryChannel) *ReportPlan { - s.ReportDeliveryChannel = v +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *RestoreTestingPlanForList) SetRestoreTestingPlanArn(v string) *RestoreTestingPlanForList { + s.RestoreTestingPlanArn = &v return s } -// SetReportPlanArn sets the ReportPlanArn field's value. -func (s *ReportPlan) SetReportPlanArn(v string) *ReportPlan { - s.ReportPlanArn = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingPlanForList) SetRestoreTestingPlanName(v string) *RestoreTestingPlanForList { + s.RestoreTestingPlanName = &v return s } -// SetReportPlanDescription sets the ReportPlanDescription field's value. -func (s *ReportPlan) SetReportPlanDescription(v string) *ReportPlan { - s.ReportPlanDescription = &v +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForList) SetScheduleExpression(v string) *RestoreTestingPlanForList { + s.ScheduleExpression = &v return s } -// SetReportPlanName sets the ReportPlanName field's value. -func (s *ReportPlan) SetReportPlanName(v string) *ReportPlan { - s.ReportPlanName = &v +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForList) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForList { + s.ScheduleExpressionTimezone = &v return s } -// SetReportSetting sets the ReportSetting field's value. -func (s *ReportPlan) SetReportSetting(v *ReportSetting) *ReportPlan { - s.ReportSetting = v +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForList) SetStartWindowHours(v int64) *RestoreTestingPlanForList { + s.StartWindowHours = &v return s } -// Contains detailed information about a report setting. -type ReportSetting struct { +// This contains metadata about a restore testing plan. +type RestoreTestingPlanForUpdate struct { _ struct{} `type:"structure"` - // These are the accounts to be included in the report. - Accounts []*string `type:"list"` - - // The Amazon Resource Names (ARNs) of the frameworks a report covers. - FrameworkArns []*string `type:"list"` - - // The number of frameworks a report covers. - NumberOfFrameworks *int64 `type:"integer"` + // Required: Algorithm; RecoveryPointTypes; IncludeVaults (one or more). + // + // Optional: SelectionWindowDays ('30' if not specified); ExcludeVaults (defaults + // to empty list if not listed). + RecoveryPointSelection *RestoreTestingRecoveryPointSelection `type:"structure"` - // These are the Organizational Units to be included in the report. - OrganizationUnits []*string `type:"list"` + // A CRON expression in specified timezone when a restore testing plan is executed. + ScheduleExpression *string `type:"string"` - // These are the Regions to be included in the report. - Regions []*string `type:"list"` + // Optional. This is the timezone in which the schedule expression is set. By + // default, ScheduleExpressions are in UTC. You can modify this to a specified + // timezone. + ScheduleExpressionTimezone *string `type:"string"` - // Identifies the report template for the report. Reports are built using a - // report template. The report templates are: - // - // RESOURCE_COMPLIANCE_REPORT | CONTROL_COMPLIANCE_REPORT | BACKUP_JOB_REPORT - // | COPY_JOB_REPORT | RESTORE_JOB_REPORT + // Defaults to 24 hours. // - // ReportTemplate is a required field - ReportTemplate *string `type:"string" required:"true"` + // A value in hours after a restore test is scheduled before a job will be canceled + // if it doesn't start successfully. This value is optional. If this value is + // included, this parameter has a maximum value of 168 hours (one week). + StartWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20301,7 +24282,7 @@ type ReportSetting 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 ReportSetting) String() string { +func (s RestoreTestingPlanForUpdate) String() string { return awsutil.Prettify(s) } @@ -20310,71 +24291,193 @@ func (s ReportSetting) 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 ReportSetting) GoString() string { +func (s RestoreTestingPlanForUpdate) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ReportSetting) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ReportSetting"} - if s.ReportTemplate == nil { - invalidParams.Add(request.NewErrParamRequired("ReportTemplate")) - } +// SetRecoveryPointSelection sets the RecoveryPointSelection field's value. +func (s *RestoreTestingPlanForUpdate) SetRecoveryPointSelection(v *RestoreTestingRecoveryPointSelection) *RestoreTestingPlanForUpdate { + s.RecoveryPointSelection = v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetScheduleExpression sets the ScheduleExpression field's value. +func (s *RestoreTestingPlanForUpdate) SetScheduleExpression(v string) *RestoreTestingPlanForUpdate { + s.ScheduleExpression = &v + return s } -// SetAccounts sets the Accounts field's value. -func (s *ReportSetting) SetAccounts(v []*string) *ReportSetting { - s.Accounts = v +// SetScheduleExpressionTimezone sets the ScheduleExpressionTimezone field's value. +func (s *RestoreTestingPlanForUpdate) SetScheduleExpressionTimezone(v string) *RestoreTestingPlanForUpdate { + s.ScheduleExpressionTimezone = &v return s } -// SetFrameworkArns sets the FrameworkArns field's value. -func (s *ReportSetting) SetFrameworkArns(v []*string) *ReportSetting { - s.FrameworkArns = v +// SetStartWindowHours sets the StartWindowHours field's value. +func (s *RestoreTestingPlanForUpdate) SetStartWindowHours(v int64) *RestoreTestingPlanForUpdate { + s.StartWindowHours = &v return s } -// SetNumberOfFrameworks sets the NumberOfFrameworks field's value. -func (s *ReportSetting) SetNumberOfFrameworks(v int64) *ReportSetting { - s.NumberOfFrameworks = &v +// Required: Algorithm; Required: Recovery point types; IncludeVaults(one or +// more). Optional: SelectionWindowDays ('30' if not specified);ExcludeVaults +// (list of selectors), defaults to empty list if not listed. +type RestoreTestingRecoveryPointSelection struct { + _ struct{} `type:"structure"` + + // Acceptable values include "LATEST_WITHIN_WINDOW" or "RANDOM_WITHIN_WINDOW" + Algorithm *string `type:"string" enum:"RestoreTestingRecoveryPointSelectionAlgorithm"` + + // Accepted values include specific ARNs or list of selectors. Defaults to empty + // list if not listed. + ExcludeVaults []*string `type:"list"` + + // Accepted values include wildcard ["*"] or by specific ARNs or ARN wilcard + // replacement ["arn:aws:backup:us-west-2:123456789012:backup-vault:asdf", ...] + // ["arn:aws:backup:*:*:backup-vault:asdf-*", ...] + IncludeVaults []*string `type:"list"` + + // These are the types of recovery points. + RecoveryPointTypes []*string `type:"list" enum:"RestoreTestingRecoveryPointType"` + + // Accepted values are integers from 1 to 365. + SelectionWindowDays *int64 `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 RestoreTestingRecoveryPointSelection) 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 RestoreTestingRecoveryPointSelection) GoString() string { + return s.String() +} + +// SetAlgorithm sets the Algorithm field's value. +func (s *RestoreTestingRecoveryPointSelection) SetAlgorithm(v string) *RestoreTestingRecoveryPointSelection { + s.Algorithm = &v return s } -// SetOrganizationUnits sets the OrganizationUnits field's value. -func (s *ReportSetting) SetOrganizationUnits(v []*string) *ReportSetting { - s.OrganizationUnits = v +// SetExcludeVaults sets the ExcludeVaults field's value. +func (s *RestoreTestingRecoveryPointSelection) SetExcludeVaults(v []*string) *RestoreTestingRecoveryPointSelection { + s.ExcludeVaults = v return s } -// SetRegions sets the Regions field's value. -func (s *ReportSetting) SetRegions(v []*string) *ReportSetting { - s.Regions = v +// SetIncludeVaults sets the IncludeVaults field's value. +func (s *RestoreTestingRecoveryPointSelection) SetIncludeVaults(v []*string) *RestoreTestingRecoveryPointSelection { + s.IncludeVaults = v return s } -// SetReportTemplate sets the ReportTemplate field's value. -func (s *ReportSetting) SetReportTemplate(v string) *ReportSetting { - s.ReportTemplate = &v +// SetRecoveryPointTypes sets the RecoveryPointTypes field's value. +func (s *RestoreTestingRecoveryPointSelection) SetRecoveryPointTypes(v []*string) *RestoreTestingRecoveryPointSelection { + s.RecoveryPointTypes = v return s } -// A resource that is required for the action doesn't exist. -type ResourceNotFoundException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetSelectionWindowDays sets the SelectionWindowDays field's value. +func (s *RestoreTestingRecoveryPointSelection) SetSelectionWindowDays(v int64) *RestoreTestingRecoveryPointSelection { + s.SelectionWindowDays = &v + return s +} - Code_ *string `locationName:"Code" type:"string"` +// This contains metadata about a specific restore testing selection. +// +// ProtectedResourceType is required, such as Amazon EBS or Amazon EC2. +// +// This consists of RestoreTestingSelectionName, ProtectedResourceType, and +// one of the following: +// +// - ProtectedResourceArns +// +// - ProtectedResourceConditions +// +// Each protected resource type can have one single value. +// +// A restore testing selection can include a wildcard value ("*") for ProtectedResourceArns +// along with ProtectedResourceConditions. Alternatively, you can include up +// to 30 specific protected resource ARNs in ProtectedResourceArns. +// +// ProtectedResourceConditions examples include as StringEquals and StringNotEquals. +type RestoreTestingSelectionForCreate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` + + // Each protected resource can be filtered by its specific ARNs, such as ProtectedResourceArns: + // ["arn:aws:...", "arn:aws:..."] or by a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` + + // If you have included the wildcard in ProtectedResourceArns, you can include + // resource conditions, such as ProtectedResourceConditions: { StringEquals: + // [{ key: "XXXX", value: "YYYY" }]. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` + + // The type of Amazon Web Services resource included in a restore testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. + // + // Supported resource types accepted include: + // + // * Aurora for Amazon Aurora + // + // * DocumentDB for Amazon DocumentDB (with MongoDB compatibility) + // + // * DynamoDB for Amazon DynamoDB + // + // * EBS for Amazon Elastic Block Store + // + // * EC2 for Amazon Elastic Compute Cloud + // + // * EFS for Amazon Elastic File System + // + // * FSx for Amazon FSx + // + // * Neptune for Amazon Neptune + // + // * RDS for Amazon Relational Database Service + // + // * S3 for Amazon S3 + // + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` - Context *string `type:"string"` + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForCreate's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` - Message_ *string `locationName:"Message" type:"string"` + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` - Type *string `type:"string"` + // This is amount of hours (1 to 168) available to run a validation script on + // the data. The data will be deleted upon the completion of the validation + // script or the end of the specified retention period, whichever comes first. + ValidationWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20382,7 +24485,7 @@ type ResourceNotFoundException 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 ResourceNotFoundException) String() string { +func (s RestoreTestingSelectionForCreate) String() string { return awsutil.Prettify(s) } @@ -20391,85 +24494,144 @@ func (s ResourceNotFoundException) 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 ResourceNotFoundException) GoString() string { +func (s RestoreTestingSelectionForCreate) GoString() string { return s.String() } -func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { - return &ResourceNotFoundException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTestingSelectionForCreate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingSelectionForCreate"} + if s.IamRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("IamRoleArn")) + } + if s.ProtectedResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ProtectedResourceType")) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.ProtectedResourceConditions != nil { + if err := s.ProtectedResourceConditions.Validate(); err != nil { + invalidParams.AddNested("ProtectedResourceConditions", err.(request.ErrInvalidParams)) + } } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Code returns the exception type name. -func (s *ResourceNotFoundException) Code() string { - return "ResourceNotFoundException" +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForCreate) SetIamRoleArn(v string) *RestoreTestingSelectionForCreate { + s.IamRoleArn = &v + return s } -// Message returns the exception's message. -func (s *ResourceNotFoundException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForCreate { + s.ProtectedResourceArns = v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ResourceNotFoundException) OrigErr() error { - return nil +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForCreate { + s.ProtectedResourceConditions = v + return s } -func (s *ResourceNotFoundException) Error() string { - return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForCreate) SetProtectedResourceType(v string) *RestoreTestingSelectionForCreate { + s.ProtectedResourceType = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ResourceNotFoundException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForCreate) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForCreate { + s.RestoreMetadataOverrides = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ResourceNotFoundException) RequestID() string { - return s.RespMetadata.RequestID +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForCreate) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForCreate { + s.RestoreTestingSelectionName = &v + return s } -// This is a summary of restore jobs created or running within the most recent -// 30 days. -// -// The returned summary may contain the following: Region, Account, State, ResourceType, -// MessageCategory, StartTime, EndTime, and Count of included jobs. -type RestoreJobSummary struct { +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForCreate) SetValidationWindowHours(v int64) *RestoreTestingSelectionForCreate { + s.ValidationWindowHours = &v + return s +} + +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForGet struct { _ struct{} `type:"structure"` - // The account ID that owns the jobs within the summary. - AccountId *string `type:"string"` + // The date and time that a restore testing selection was created, in Unix format + // and Coordinated Universal Time (UTC). The value of CreationTime is accurate + // to milliseconds. For example, the value 1516925490.087 represents Friday, + // January 26, 201812:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` - // The value as a number of jobs in a job summary. - Count *int64 `type:"integer"` + // This identifies the request and allows failed requests to be retried without + // the risk of running the operation twice. If the request includes a CreatorRequestId + // that matches an existing backup plan, that plan is returned. This parameter + // is optional. + // + // If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters. + CreatorRequestId *string `type:"string"` - // The value of time in number format of a job end time. + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example:arn:aws:iam::123456789012:role/S3Access. // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - EndTime *time.Time `type:"timestamp"` + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` - // The Amazon Web Services Regions within the job summary. - Region *string `type:"string"` + // You can include specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", + // "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` - // This value is the job count for the specified resource type. The request - // GetSupportedResourceTypes returns strings for supported resource types. - ResourceType *string `type:"string"` + // In a resource testing selection, this parameter filters by specific conditions + // such as StringEquals or StringNotEquals. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` - // The value of time in number format of a job start time. + // The type of Amazon Web Services resource included in a resource testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. // - // This value is the time in Unix format, Coordinated Universal Time (UTC), - // and accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - StartTime *time.Time `type:"timestamp"` + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` - // This value is job count for jobs with the specified state. - State *string `type:"string" enum:"RestoreJobState"` + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForGet's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` + + // The RestoreTestingPlanName is a unique string that is the name of the restore + // testing plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the unique name of the restore testing selection that belongs to + // the related restore testing plan. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This is amount of hours (1 to 168) available to run a validation script on + // the data. The data will be deleted upon the completion of the validation + // script or the end of the specified retention period, whichever comes first. + ValidationWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20477,7 +24639,7 @@ type RestoreJobSummary 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 RestoreJobSummary) String() string { +func (s RestoreTestingSelectionForGet) String() string { return awsutil.Prettify(s) } @@ -20486,109 +24648,113 @@ func (s RestoreJobSummary) 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 RestoreJobSummary) GoString() string { +func (s RestoreTestingSelectionForGet) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *RestoreJobSummary) SetAccountId(v string) *RestoreJobSummary { - s.AccountId = &v +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingSelectionForGet) SetCreationTime(v time.Time) *RestoreTestingSelectionForGet { + s.CreationTime = &v return s } -// SetCount sets the Count field's value. -func (s *RestoreJobSummary) SetCount(v int64) *RestoreJobSummary { - s.Count = &v +// SetCreatorRequestId sets the CreatorRequestId field's value. +func (s *RestoreTestingSelectionForGet) SetCreatorRequestId(v string) *RestoreTestingSelectionForGet { + s.CreatorRequestId = &v return s } -// SetEndTime sets the EndTime field's value. -func (s *RestoreJobSummary) SetEndTime(v time.Time) *RestoreJobSummary { - s.EndTime = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForGet) SetIamRoleArn(v string) *RestoreTestingSelectionForGet { + s.IamRoleArn = &v return s } -// SetRegion sets the Region field's value. -func (s *RestoreJobSummary) SetRegion(v string) *RestoreJobSummary { - s.Region = &v +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForGet { + s.ProtectedResourceArns = v return s } -// SetResourceType sets the ResourceType field's value. -func (s *RestoreJobSummary) SetResourceType(v string) *RestoreJobSummary { - s.ResourceType = &v +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForGet { + s.ProtectedResourceConditions = v return s } -// SetStartTime sets the StartTime field's value. -func (s *RestoreJobSummary) SetStartTime(v time.Time) *RestoreJobSummary { - s.StartTime = &v +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForGet) SetProtectedResourceType(v string) *RestoreTestingSelectionForGet { + s.ProtectedResourceType = &v return s } -// SetState sets the State field's value. -func (s *RestoreJobSummary) SetState(v string) *RestoreJobSummary { - s.State = &v +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForGet { + s.RestoreMetadataOverrides = v return s } -// Contains metadata about a restore job. -type RestoreJobsListMember struct { - _ struct{} `type:"structure"` - - // The account ID that owns the restore job. - AccountId *string `type:"string"` - - // The size, in bytes, of the restored resource. - BackupSizeInBytes *int64 `type:"long"` - - // The date and time a job to restore a recovery point is completed, in Unix - // format and Coordinated Universal Time (UTC). The value of CompletionDate - // is accurate to milliseconds. For example, the value 1516925490.087 represents - // Friday, January 26, 2018 12:11:30.087 AM. - CompletionDate *time.Time `type:"timestamp"` - - // An Amazon Resource Name (ARN) that uniquely identifies a resource. The format - // of the ARN depends on the resource type. - CreatedResourceArn *string `type:"string"` +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreTestingPlanName(v string) *RestoreTestingSelectionForGet { + s.RestoreTestingPlanName = &v + return s +} - // The date and time a restore job is created, in Unix format and Coordinated - // Universal Time (UTC). The value of CreationDate is accurate to milliseconds. - // For example, the value 1516925490.087 represents Friday, January 26, 2018 - // 12:11:30.087 AM. - CreationDate *time.Time `type:"timestamp"` +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForGet) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForGet { + s.RestoreTestingSelectionName = &v + return s +} - // The amount of time in minutes that a job restoring a recovery point is expected - // to take. - ExpectedCompletionTimeMinutes *int64 `type:"long"` +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForGet) SetValidationWindowHours(v int64) *RestoreTestingSelectionForGet { + s.ValidationWindowHours = &v + return s +} - // Specifies the IAM role ARN used to create the target recovery point; for - // example, arn:aws:iam::123456789012:role/S3Access. - IamRoleArn *string `type:"string"` +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForList struct { + _ struct{} `type:"structure"` - // Contains an estimated percentage complete of a job at the time the job status - // was queried. - PercentDone *string `type:"string"` + // This is the date and time that a restore testing selection was created, in + // Unix format and Coordinated Universal Time (UTC). The value of CreationTime + // is accurate to milliseconds. For example, the value 1516925490.087 represents + // Friday, January 26,2018 12:11:30.087 AM. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` - // An ARN that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45. - RecoveryPointArn *string `type:"string"` + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + // + // IamRoleArn is a required field + IamRoleArn *string `type:"string" required:"true"` - // The resource type of the listed restore jobs; for example, an Amazon Elastic - // Block Store (Amazon EBS) volume or an Amazon Relational Database Service - // (Amazon RDS) database. For Windows Volume Shadow Copy Service (VSS) backups, - // the only supported resource type is Amazon EC2. - ResourceType *string `type:"string"` + // The type of Amazon Web Services resource included in a restore testing selection; + // for example, an Amazon EBS volume or an Amazon RDS database. + // + // ProtectedResourceType is a required field + ProtectedResourceType *string `type:"string" required:"true"` - // Uniquely identifies the job that restores a recovery point. - RestoreJobId *string `type:"string"` + // Unique string that is the name of the restore testing plan. + // + // The name cannot be changed after creation. The name must consist of only + // alphanumeric characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` - // A status code specifying the state of the job initiated by Backup to restore - // a recovery point. - Status *string `type:"string" enum:"RestoreJobStatus"` + // Unique name of a restore testing selection. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` - // A detailed message explaining the status of the job to restore a recovery - // point. - StatusMessage *string `type:"string"` + // This value represents the time, in hours, data is retained after a restore + // test so that optional validation can be completed. + // + // Accepted value is an integer between 0 and 168 (the hourly equivalent of + // seven days). + ValidationWindowHours *int64 `type:"integer"` } // String returns the string representation. @@ -20596,7 +24762,7 @@ type RestoreJobsListMember 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 RestoreJobsListMember) String() string { +func (s RestoreTestingSelectionForList) String() string { return awsutil.Prettify(s) } @@ -20605,85 +24771,145 @@ func (s RestoreJobsListMember) 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 RestoreJobsListMember) GoString() string { +func (s RestoreTestingSelectionForList) GoString() string { return s.String() } -// SetAccountId sets the AccountId field's value. -func (s *RestoreJobsListMember) SetAccountId(v string) *RestoreJobsListMember { - s.AccountId = &v +// SetCreationTime sets the CreationTime field's value. +func (s *RestoreTestingSelectionForList) SetCreationTime(v time.Time) *RestoreTestingSelectionForList { + s.CreationTime = &v return s } -// SetBackupSizeInBytes sets the BackupSizeInBytes field's value. -func (s *RestoreJobsListMember) SetBackupSizeInBytes(v int64) *RestoreJobsListMember { - s.BackupSizeInBytes = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForList) SetIamRoleArn(v string) *RestoreTestingSelectionForList { + s.IamRoleArn = &v return s } -// SetCompletionDate sets the CompletionDate field's value. -func (s *RestoreJobsListMember) SetCompletionDate(v time.Time) *RestoreJobsListMember { - s.CompletionDate = &v +// SetProtectedResourceType sets the ProtectedResourceType field's value. +func (s *RestoreTestingSelectionForList) SetProtectedResourceType(v string) *RestoreTestingSelectionForList { + s.ProtectedResourceType = &v return s } -// SetCreatedResourceArn sets the CreatedResourceArn field's value. -func (s *RestoreJobsListMember) SetCreatedResourceArn(v string) *RestoreJobsListMember { - s.CreatedResourceArn = &v +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *RestoreTestingSelectionForList) SetRestoreTestingPlanName(v string) *RestoreTestingSelectionForList { + s.RestoreTestingPlanName = &v return s } -// SetCreationDate sets the CreationDate field's value. -func (s *RestoreJobsListMember) SetCreationDate(v time.Time) *RestoreJobsListMember { - s.CreationDate = &v +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *RestoreTestingSelectionForList) SetRestoreTestingSelectionName(v string) *RestoreTestingSelectionForList { + s.RestoreTestingSelectionName = &v + return s +} + +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForList) SetValidationWindowHours(v int64) *RestoreTestingSelectionForList { + s.ValidationWindowHours = &v return s } -// SetExpectedCompletionTimeMinutes sets the ExpectedCompletionTimeMinutes field's value. -func (s *RestoreJobsListMember) SetExpectedCompletionTimeMinutes(v int64) *RestoreJobsListMember { - s.ExpectedCompletionTimeMinutes = &v - return s +// This contains metadata about a restore testing selection. +type RestoreTestingSelectionForUpdate struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the IAM role that Backup uses to create + // the target resource; for example: arn:aws:iam::123456789012:role/S3Access. + IamRoleArn *string `type:"string"` + + // You can include a list of specific ARNs, such as ProtectedResourceArns: ["arn:aws:...", + // "arn:aws:..."] or you can include a wildcard: ProtectedResourceArns: ["*"], + // but not both. + ProtectedResourceArns []*string `type:"list"` + + // A list of conditions that you define for resources in your restore testing + // plan using tags. + // + // For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", "Value": + // "true" },. Condition operators are case sensitive. + ProtectedResourceConditions *ProtectedResourceConditions `type:"structure"` + + // You can override certain restore metadata keys by including the parameter + // RestoreMetadataOverrides in the body of RestoreTestingSelection. Key values + // are not case sensitive. + // + // See the complete list of restore testing inferred metadata (https://docs.aws.amazon.com/aws-backup/latest/devguide/restore-testing-inferred-metadata.html). + // + // RestoreMetadataOverrides is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RestoreTestingSelectionForUpdate's + // String and GoString methods. + RestoreMetadataOverrides map[string]*string `type:"map" sensitive:"true"` + + // This value represents the time, in hours, data is retained after a restore + // test so that optional validation can be completed. + // + // Accepted value is an integer between 0 and 168 (the hourly equivalent of + // seven days). + ValidationWindowHours *int64 `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 RestoreTestingSelectionForUpdate) 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 RestoreTestingSelectionForUpdate) GoString() string { + return s.String() } -// SetIamRoleArn sets the IamRoleArn field's value. -func (s *RestoreJobsListMember) SetIamRoleArn(v string) *RestoreJobsListMember { - s.IamRoleArn = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreTestingSelectionForUpdate) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreTestingSelectionForUpdate"} + if s.ProtectedResourceConditions != nil { + if err := s.ProtectedResourceConditions.Validate(); err != nil { + invalidParams.AddNested("ProtectedResourceConditions", err.(request.ErrInvalidParams)) + } + } -// SetPercentDone sets the PercentDone field's value. -func (s *RestoreJobsListMember) SetPercentDone(v string) *RestoreJobsListMember { - s.PercentDone = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetRecoveryPointArn sets the RecoveryPointArn field's value. -func (s *RestoreJobsListMember) SetRecoveryPointArn(v string) *RestoreJobsListMember { - s.RecoveryPointArn = &v +// SetIamRoleArn sets the IamRoleArn field's value. +func (s *RestoreTestingSelectionForUpdate) SetIamRoleArn(v string) *RestoreTestingSelectionForUpdate { + s.IamRoleArn = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *RestoreJobsListMember) SetResourceType(v string) *RestoreJobsListMember { - s.ResourceType = &v +// SetProtectedResourceArns sets the ProtectedResourceArns field's value. +func (s *RestoreTestingSelectionForUpdate) SetProtectedResourceArns(v []*string) *RestoreTestingSelectionForUpdate { + s.ProtectedResourceArns = v return s } -// SetRestoreJobId sets the RestoreJobId field's value. -func (s *RestoreJobsListMember) SetRestoreJobId(v string) *RestoreJobsListMember { - s.RestoreJobId = &v +// SetProtectedResourceConditions sets the ProtectedResourceConditions field's value. +func (s *RestoreTestingSelectionForUpdate) SetProtectedResourceConditions(v *ProtectedResourceConditions) *RestoreTestingSelectionForUpdate { + s.ProtectedResourceConditions = v return s } -// SetStatus sets the Status field's value. -func (s *RestoreJobsListMember) SetStatus(v string) *RestoreJobsListMember { - s.Status = &v +// SetRestoreMetadataOverrides sets the RestoreMetadataOverrides field's value. +func (s *RestoreTestingSelectionForUpdate) SetRestoreMetadataOverrides(v map[string]*string) *RestoreTestingSelectionForUpdate { + s.RestoreMetadataOverrides = v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *RestoreJobsListMember) SetStatusMessage(v string) *RestoreJobsListMember { - s.StatusMessage = &v +// SetValidationWindowHours sets the ValidationWindowHours field's value. +func (s *RestoreTestingSelectionForUpdate) SetValidationWindowHours(v int64) *RestoreTestingSelectionForUpdate { + s.ValidationWindowHours = &v return s } @@ -21049,8 +25275,8 @@ type Selection struct { _ struct{} `type:"structure"` // A list of conditions that you define to assign resources to your backup plans - // using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", - // "ConditionValue": "true" },. Condition operators are case sensitive. + // using tags. For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", + // "Value": "true" },. Condition operators are case sensitive. // // Conditions differs from ListOfTags as follows: // @@ -21068,8 +25294,8 @@ type Selection struct { IamRoleArn *string `type:"string" required:"true"` // A list of conditions that you define to assign resources to your backup plans - // using tags. For example, "StringEquals": { "ConditionKey": "aws:ResourceTag/CreatedByCryo", - // "ConditionValue": "true" },. Condition operators are case sensitive. + // using tags. For example, "StringEquals": { "Key": "aws:ResourceTag/CreatedByCryo", + // "Value": "true" },. Condition operators are case sensitive. // // ListOfTags differs from Conditions as follows: // @@ -23035,6 +27261,304 @@ func (s *UpdateReportPlanOutput) SetReportPlanName(v string) *UpdateReportPlanOu return s } +type UpdateRestoreTestingPlanInput struct { + _ struct{} `type:"structure"` + + // Specifies the body of a restore testing plan. + // + // RestoreTestingPlan is a required field + RestoreTestingPlan *RestoreTestingPlanForUpdate `type:"structure" required:"true"` + + // This is the restore testing plan name you wish to update. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" 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 UpdateRestoreTestingPlanInput) 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 UpdateRestoreTestingPlanInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRestoreTestingPlanInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRestoreTestingPlanInput"} + if s.RestoreTestingPlan == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlan")) + } + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlan sets the RestoreTestingPlan field's value. +func (s *UpdateRestoreTestingPlanInput) SetRestoreTestingPlan(v *RestoreTestingPlanForUpdate) *UpdateRestoreTestingPlanInput { + s.RestoreTestingPlan = v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingPlanInput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingPlanInput { + s.RestoreTestingPlanName = &v + return s +} + +type UpdateRestoreTestingPlanOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing plan was created. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // Unique ARN (Amazon Resource Name) of the restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // The name cannot be changed after creation. The name consists of only alphanumeric + // characters and underscores. Maximum length is 50. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the time the update completed for the restore testing plan. + // + // UpdateTime is a required field + UpdateTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingPlanOutput) 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 UpdateRestoreTestingPlanOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *UpdateRestoreTestingPlanOutput) SetCreationTime(v time.Time) *UpdateRestoreTestingPlanOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *UpdateRestoreTestingPlanOutput) SetRestoreTestingPlanArn(v string) *UpdateRestoreTestingPlanOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingPlanOutput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingPlanOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *UpdateRestoreTestingPlanOutput) SetUpdateTime(v time.Time) *UpdateRestoreTestingPlanOutput { + s.UpdateTime = &v + return s +} + +type UpdateRestoreTestingSelectionInput struct { + _ struct{} `type:"structure"` + + // The restore testing plan name is required to update the indicated testing + // plan. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `location:"uri" locationName:"RestoreTestingPlanName" type:"string" required:"true"` + + // To update your restore testing selection, you can use either protected resource + // ARNs or conditions, but not both. That is, if your selection has ProtectedResourceArns, + // requesting an update with the parameter ProtectedResourceConditions will + // be unsuccessful. + // + // RestoreTestingSelection is a required field + RestoreTestingSelection *RestoreTestingSelectionForUpdate `type:"structure" required:"true"` + + // This is the required restore testing selection name of the restore testing + // selection you wish to update. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `location:"uri" locationName:"RestoreTestingSelectionName" 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 UpdateRestoreTestingSelectionInput) 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 UpdateRestoreTestingSelectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateRestoreTestingSelectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateRestoreTestingSelectionInput"} + if s.RestoreTestingPlanName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingPlanName")) + } + if s.RestoreTestingPlanName != nil && len(*s.RestoreTestingPlanName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingPlanName", 1)) + } + if s.RestoreTestingSelection == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelection")) + } + if s.RestoreTestingSelectionName == nil { + invalidParams.Add(request.NewErrParamRequired("RestoreTestingSelectionName")) + } + if s.RestoreTestingSelectionName != nil && len(*s.RestoreTestingSelectionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RestoreTestingSelectionName", 1)) + } + if s.RestoreTestingSelection != nil { + if err := s.RestoreTestingSelection.Validate(); err != nil { + invalidParams.AddNested("RestoreTestingSelection", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelection sets the RestoreTestingSelection field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingSelection(v *RestoreTestingSelectionForUpdate) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingSelection = v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *UpdateRestoreTestingSelectionInput) SetRestoreTestingSelectionName(v string) *UpdateRestoreTestingSelectionInput { + s.RestoreTestingSelectionName = &v + return s +} + +type UpdateRestoreTestingSelectionOutput struct { + _ struct{} `type:"structure"` + + // This is the time the resource testing selection was updated successfully. + // + // CreationTime is a required field + CreationTime *time.Time `type:"timestamp" required:"true"` + + // Unique string that is the name of the restore testing plan. + // + // RestoreTestingPlanArn is a required field + RestoreTestingPlanArn *string `type:"string" required:"true"` + + // This is the restore testing plan with which the updated restore testing selection + // is associated. + // + // RestoreTestingPlanName is a required field + RestoreTestingPlanName *string `type:"string" required:"true"` + + // This is the returned restore testing selection name. + // + // RestoreTestingSelectionName is a required field + RestoreTestingSelectionName *string `type:"string" required:"true"` + + // This is the time the update completed for the restore testing selection. + // + // UpdateTime is a required field + UpdateTime *time.Time `type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateRestoreTestingSelectionOutput) 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 UpdateRestoreTestingSelectionOutput) GoString() string { + return s.String() +} + +// SetCreationTime sets the CreationTime field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetCreationTime(v time.Time) *UpdateRestoreTestingSelectionOutput { + s.CreationTime = &v + return s +} + +// SetRestoreTestingPlanArn sets the RestoreTestingPlanArn field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingPlanArn(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingPlanArn = &v + return s +} + +// SetRestoreTestingPlanName sets the RestoreTestingPlanName field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingPlanName(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingPlanName = &v + return s +} + +// SetRestoreTestingSelectionName sets the RestoreTestingSelectionName field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetRestoreTestingSelectionName(v string) *UpdateRestoreTestingSelectionOutput { + s.RestoreTestingSelectionName = &v + return s +} + +// SetUpdateTime sets the UpdateTime field's value. +func (s *UpdateRestoreTestingSelectionOutput) SetUpdateTime(v time.Time) *UpdateRestoreTestingSelectionOutput { + s.UpdateTime = &v + return s +} + // Contains metadata about a backup vault. type VaultListMember struct { _ struct{} `type:"structure"` @@ -23452,6 +27976,26 @@ func RecoveryPointStatus_Values() []string { } } +const ( + // RestoreDeletionStatusDeleting is a RestoreDeletionStatus enum value + RestoreDeletionStatusDeleting = "DELETING" + + // RestoreDeletionStatusFailed is a RestoreDeletionStatus enum value + RestoreDeletionStatusFailed = "FAILED" + + // RestoreDeletionStatusSuccessful is a RestoreDeletionStatus enum value + RestoreDeletionStatusSuccessful = "SUCCESSFUL" +) + +// RestoreDeletionStatus_Values returns all elements of the RestoreDeletionStatus enum +func RestoreDeletionStatus_Values() []string { + return []string{ + RestoreDeletionStatusDeleting, + RestoreDeletionStatusFailed, + RestoreDeletionStatusSuccessful, + } +} + const ( // RestoreJobStateCreated is a RestoreJobState enum value RestoreJobStateCreated = "CREATED" @@ -23520,6 +28064,62 @@ func RestoreJobStatus_Values() []string { } } +const ( + // RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow is a RestoreTestingRecoveryPointSelectionAlgorithm enum value + RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow = "LATEST_WITHIN_WINDOW" + + // RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow is a RestoreTestingRecoveryPointSelectionAlgorithm enum value + RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow = "RANDOM_WITHIN_WINDOW" +) + +// RestoreTestingRecoveryPointSelectionAlgorithm_Values returns all elements of the RestoreTestingRecoveryPointSelectionAlgorithm enum +func RestoreTestingRecoveryPointSelectionAlgorithm_Values() []string { + return []string{ + RestoreTestingRecoveryPointSelectionAlgorithmLatestWithinWindow, + RestoreTestingRecoveryPointSelectionAlgorithmRandomWithinWindow, + } +} + +const ( + // RestoreTestingRecoveryPointTypeContinuous is a RestoreTestingRecoveryPointType enum value + RestoreTestingRecoveryPointTypeContinuous = "CONTINUOUS" + + // RestoreTestingRecoveryPointTypeSnapshot is a RestoreTestingRecoveryPointType enum value + RestoreTestingRecoveryPointTypeSnapshot = "SNAPSHOT" +) + +// RestoreTestingRecoveryPointType_Values returns all elements of the RestoreTestingRecoveryPointType enum +func RestoreTestingRecoveryPointType_Values() []string { + return []string{ + RestoreTestingRecoveryPointTypeContinuous, + RestoreTestingRecoveryPointTypeSnapshot, + } +} + +const ( + // RestoreValidationStatusFailed is a RestoreValidationStatus enum value + RestoreValidationStatusFailed = "FAILED" + + // RestoreValidationStatusSuccessful is a RestoreValidationStatus enum value + RestoreValidationStatusSuccessful = "SUCCESSFUL" + + // RestoreValidationStatusTimedOut is a RestoreValidationStatus enum value + RestoreValidationStatusTimedOut = "TIMED_OUT" + + // RestoreValidationStatusValidating is a RestoreValidationStatus enum value + RestoreValidationStatusValidating = "VALIDATING" +) + +// RestoreValidationStatus_Values returns all elements of the RestoreValidationStatus enum +func RestoreValidationStatus_Values() []string { + return []string{ + RestoreValidationStatusFailed, + RestoreValidationStatusSuccessful, + RestoreValidationStatusTimedOut, + RestoreValidationStatusValidating, + } +} + const ( // StorageClassWarm is a StorageClass enum value StorageClassWarm = "WARM" diff --git a/service/backup/backupiface/interface.go b/service/backup/backupiface/interface.go index 764a6a3796f..29b15d8008d 100644 --- a/service/backup/backupiface/interface.go +++ b/service/backup/backupiface/interface.go @@ -92,6 +92,14 @@ type BackupAPI interface { CreateReportPlanWithContext(aws.Context, *backup.CreateReportPlanInput, ...request.Option) (*backup.CreateReportPlanOutput, error) CreateReportPlanRequest(*backup.CreateReportPlanInput) (*request.Request, *backup.CreateReportPlanOutput) + CreateRestoreTestingPlan(*backup.CreateRestoreTestingPlanInput) (*backup.CreateRestoreTestingPlanOutput, error) + CreateRestoreTestingPlanWithContext(aws.Context, *backup.CreateRestoreTestingPlanInput, ...request.Option) (*backup.CreateRestoreTestingPlanOutput, error) + CreateRestoreTestingPlanRequest(*backup.CreateRestoreTestingPlanInput) (*request.Request, *backup.CreateRestoreTestingPlanOutput) + + CreateRestoreTestingSelection(*backup.CreateRestoreTestingSelectionInput) (*backup.CreateRestoreTestingSelectionOutput, error) + CreateRestoreTestingSelectionWithContext(aws.Context, *backup.CreateRestoreTestingSelectionInput, ...request.Option) (*backup.CreateRestoreTestingSelectionOutput, error) + CreateRestoreTestingSelectionRequest(*backup.CreateRestoreTestingSelectionInput) (*request.Request, *backup.CreateRestoreTestingSelectionOutput) + DeleteBackupPlan(*backup.DeleteBackupPlanInput) (*backup.DeleteBackupPlanOutput, error) DeleteBackupPlanWithContext(aws.Context, *backup.DeleteBackupPlanInput, ...request.Option) (*backup.DeleteBackupPlanOutput, error) DeleteBackupPlanRequest(*backup.DeleteBackupPlanInput) (*request.Request, *backup.DeleteBackupPlanOutput) @@ -128,6 +136,14 @@ type BackupAPI interface { DeleteReportPlanWithContext(aws.Context, *backup.DeleteReportPlanInput, ...request.Option) (*backup.DeleteReportPlanOutput, error) DeleteReportPlanRequest(*backup.DeleteReportPlanInput) (*request.Request, *backup.DeleteReportPlanOutput) + DeleteRestoreTestingPlan(*backup.DeleteRestoreTestingPlanInput) (*backup.DeleteRestoreTestingPlanOutput, error) + DeleteRestoreTestingPlanWithContext(aws.Context, *backup.DeleteRestoreTestingPlanInput, ...request.Option) (*backup.DeleteRestoreTestingPlanOutput, error) + DeleteRestoreTestingPlanRequest(*backup.DeleteRestoreTestingPlanInput) (*request.Request, *backup.DeleteRestoreTestingPlanOutput) + + DeleteRestoreTestingSelection(*backup.DeleteRestoreTestingSelectionInput) (*backup.DeleteRestoreTestingSelectionOutput, error) + DeleteRestoreTestingSelectionWithContext(aws.Context, *backup.DeleteRestoreTestingSelectionInput, ...request.Option) (*backup.DeleteRestoreTestingSelectionOutput, error) + DeleteRestoreTestingSelectionRequest(*backup.DeleteRestoreTestingSelectionInput) (*request.Request, *backup.DeleteRestoreTestingSelectionOutput) + DescribeBackupJob(*backup.DescribeBackupJobInput) (*backup.DescribeBackupJobOutput, error) DescribeBackupJobWithContext(aws.Context, *backup.DescribeBackupJobInput, ...request.Option) (*backup.DescribeBackupJobOutput, error) DescribeBackupJobRequest(*backup.DescribeBackupJobInput) (*request.Request, *backup.DescribeBackupJobOutput) @@ -216,6 +232,22 @@ type BackupAPI interface { GetRecoveryPointRestoreMetadataWithContext(aws.Context, *backup.GetRecoveryPointRestoreMetadataInput, ...request.Option) (*backup.GetRecoveryPointRestoreMetadataOutput, error) GetRecoveryPointRestoreMetadataRequest(*backup.GetRecoveryPointRestoreMetadataInput) (*request.Request, *backup.GetRecoveryPointRestoreMetadataOutput) + GetRestoreJobMetadata(*backup.GetRestoreJobMetadataInput) (*backup.GetRestoreJobMetadataOutput, error) + GetRestoreJobMetadataWithContext(aws.Context, *backup.GetRestoreJobMetadataInput, ...request.Option) (*backup.GetRestoreJobMetadataOutput, error) + GetRestoreJobMetadataRequest(*backup.GetRestoreJobMetadataInput) (*request.Request, *backup.GetRestoreJobMetadataOutput) + + GetRestoreTestingInferredMetadata(*backup.GetRestoreTestingInferredMetadataInput) (*backup.GetRestoreTestingInferredMetadataOutput, error) + GetRestoreTestingInferredMetadataWithContext(aws.Context, *backup.GetRestoreTestingInferredMetadataInput, ...request.Option) (*backup.GetRestoreTestingInferredMetadataOutput, error) + GetRestoreTestingInferredMetadataRequest(*backup.GetRestoreTestingInferredMetadataInput) (*request.Request, *backup.GetRestoreTestingInferredMetadataOutput) + + GetRestoreTestingPlan(*backup.GetRestoreTestingPlanInput) (*backup.GetRestoreTestingPlanOutput, error) + GetRestoreTestingPlanWithContext(aws.Context, *backup.GetRestoreTestingPlanInput, ...request.Option) (*backup.GetRestoreTestingPlanOutput, error) + GetRestoreTestingPlanRequest(*backup.GetRestoreTestingPlanInput) (*request.Request, *backup.GetRestoreTestingPlanOutput) + + GetRestoreTestingSelection(*backup.GetRestoreTestingSelectionInput) (*backup.GetRestoreTestingSelectionOutput, error) + GetRestoreTestingSelectionWithContext(aws.Context, *backup.GetRestoreTestingSelectionInput, ...request.Option) (*backup.GetRestoreTestingSelectionOutput, error) + GetRestoreTestingSelectionRequest(*backup.GetRestoreTestingSelectionInput) (*request.Request, *backup.GetRestoreTestingSelectionOutput) + GetSupportedResourceTypes(*backup.GetSupportedResourceTypesInput) (*backup.GetSupportedResourceTypesOutput, error) GetSupportedResourceTypesWithContext(aws.Context, *backup.GetSupportedResourceTypesInput, ...request.Option) (*backup.GetSupportedResourceTypesOutput, error) GetSupportedResourceTypesRequest(*backup.GetSupportedResourceTypesInput) (*request.Request, *backup.GetSupportedResourceTypesOutput) @@ -360,6 +392,27 @@ type BackupAPI interface { ListRestoreJobsPages(*backup.ListRestoreJobsInput, func(*backup.ListRestoreJobsOutput, bool) bool) error ListRestoreJobsPagesWithContext(aws.Context, *backup.ListRestoreJobsInput, func(*backup.ListRestoreJobsOutput, bool) bool, ...request.Option) error + ListRestoreJobsByProtectedResource(*backup.ListRestoreJobsByProtectedResourceInput) (*backup.ListRestoreJobsByProtectedResourceOutput, error) + ListRestoreJobsByProtectedResourceWithContext(aws.Context, *backup.ListRestoreJobsByProtectedResourceInput, ...request.Option) (*backup.ListRestoreJobsByProtectedResourceOutput, error) + ListRestoreJobsByProtectedResourceRequest(*backup.ListRestoreJobsByProtectedResourceInput) (*request.Request, *backup.ListRestoreJobsByProtectedResourceOutput) + + ListRestoreJobsByProtectedResourcePages(*backup.ListRestoreJobsByProtectedResourceInput, func(*backup.ListRestoreJobsByProtectedResourceOutput, bool) bool) error + ListRestoreJobsByProtectedResourcePagesWithContext(aws.Context, *backup.ListRestoreJobsByProtectedResourceInput, func(*backup.ListRestoreJobsByProtectedResourceOutput, bool) bool, ...request.Option) error + + ListRestoreTestingPlans(*backup.ListRestoreTestingPlansInput) (*backup.ListRestoreTestingPlansOutput, error) + ListRestoreTestingPlansWithContext(aws.Context, *backup.ListRestoreTestingPlansInput, ...request.Option) (*backup.ListRestoreTestingPlansOutput, error) + ListRestoreTestingPlansRequest(*backup.ListRestoreTestingPlansInput) (*request.Request, *backup.ListRestoreTestingPlansOutput) + + ListRestoreTestingPlansPages(*backup.ListRestoreTestingPlansInput, func(*backup.ListRestoreTestingPlansOutput, bool) bool) error + ListRestoreTestingPlansPagesWithContext(aws.Context, *backup.ListRestoreTestingPlansInput, func(*backup.ListRestoreTestingPlansOutput, bool) bool, ...request.Option) error + + ListRestoreTestingSelections(*backup.ListRestoreTestingSelectionsInput) (*backup.ListRestoreTestingSelectionsOutput, error) + ListRestoreTestingSelectionsWithContext(aws.Context, *backup.ListRestoreTestingSelectionsInput, ...request.Option) (*backup.ListRestoreTestingSelectionsOutput, error) + ListRestoreTestingSelectionsRequest(*backup.ListRestoreTestingSelectionsInput) (*request.Request, *backup.ListRestoreTestingSelectionsOutput) + + ListRestoreTestingSelectionsPages(*backup.ListRestoreTestingSelectionsInput, func(*backup.ListRestoreTestingSelectionsOutput, bool) bool) error + ListRestoreTestingSelectionsPagesWithContext(aws.Context, *backup.ListRestoreTestingSelectionsInput, func(*backup.ListRestoreTestingSelectionsOutput, bool) bool, ...request.Option) error + ListTags(*backup.ListTagsInput) (*backup.ListTagsOutput, error) ListTagsWithContext(aws.Context, *backup.ListTagsInput, ...request.Option) (*backup.ListTagsOutput, error) ListTagsRequest(*backup.ListTagsInput) (*request.Request, *backup.ListTagsOutput) @@ -379,6 +432,10 @@ type BackupAPI interface { PutBackupVaultNotificationsWithContext(aws.Context, *backup.PutBackupVaultNotificationsInput, ...request.Option) (*backup.PutBackupVaultNotificationsOutput, error) PutBackupVaultNotificationsRequest(*backup.PutBackupVaultNotificationsInput) (*request.Request, *backup.PutBackupVaultNotificationsOutput) + PutRestoreValidationResult(*backup.PutRestoreValidationResultInput) (*backup.PutRestoreValidationResultOutput, error) + PutRestoreValidationResultWithContext(aws.Context, *backup.PutRestoreValidationResultInput, ...request.Option) (*backup.PutRestoreValidationResultOutput, error) + PutRestoreValidationResultRequest(*backup.PutRestoreValidationResultInput) (*request.Request, *backup.PutRestoreValidationResultOutput) + StartBackupJob(*backup.StartBackupJobInput) (*backup.StartBackupJobOutput, error) StartBackupJobWithContext(aws.Context, *backup.StartBackupJobInput, ...request.Option) (*backup.StartBackupJobOutput, error) StartBackupJobRequest(*backup.StartBackupJobInput) (*request.Request, *backup.StartBackupJobOutput) @@ -430,6 +487,14 @@ type BackupAPI interface { UpdateReportPlan(*backup.UpdateReportPlanInput) (*backup.UpdateReportPlanOutput, error) UpdateReportPlanWithContext(aws.Context, *backup.UpdateReportPlanInput, ...request.Option) (*backup.UpdateReportPlanOutput, error) UpdateReportPlanRequest(*backup.UpdateReportPlanInput) (*request.Request, *backup.UpdateReportPlanOutput) + + UpdateRestoreTestingPlan(*backup.UpdateRestoreTestingPlanInput) (*backup.UpdateRestoreTestingPlanOutput, error) + UpdateRestoreTestingPlanWithContext(aws.Context, *backup.UpdateRestoreTestingPlanInput, ...request.Option) (*backup.UpdateRestoreTestingPlanOutput, error) + UpdateRestoreTestingPlanRequest(*backup.UpdateRestoreTestingPlanInput) (*request.Request, *backup.UpdateRestoreTestingPlanOutput) + + UpdateRestoreTestingSelection(*backup.UpdateRestoreTestingSelectionInput) (*backup.UpdateRestoreTestingSelectionOutput, error) + UpdateRestoreTestingSelectionWithContext(aws.Context, *backup.UpdateRestoreTestingSelectionInput, ...request.Option) (*backup.UpdateRestoreTestingSelectionOutput, error) + UpdateRestoreTestingSelectionRequest(*backup.UpdateRestoreTestingSelectionInput) (*request.Request, *backup.UpdateRestoreTestingSelectionOutput) } var _ BackupAPI = (*backup.Backup)(nil) diff --git a/service/controltower/api.go b/service/controltower/api.go index 4122d862b28..212b5ab8bbd 100644 --- a/service/controltower/api.go +++ b/service/controltower/api.go @@ -56,9 +56,9 @@ func (c *ControlTower) DeleteLandingZoneRequest(input *DeleteLandingZoneInput) ( // DeleteLandingZone API operation for AWS Control Tower. // -// This decommissions a landing zone. This starts an asynchronous operation -// that deletes Amazon Web Services Control Tower resources deployed in Amazon -// Web Services Control Tower managed accounts. +// Decommissions a landing zone. This API call starts an asynchronous operation +// that deletes Amazon Web Services Control Tower resources deployed in accounts +// managed by Amazon Web Services Control Tower. // // 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 @@ -70,23 +70,23 @@ func (c *ControlTower) DeleteLandingZoneRequest(input *DeleteLandingZoneInput) ( // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DeleteLandingZone func (c *ControlTower) DeleteLandingZone(input *DeleteLandingZoneInput) (*DeleteLandingZoneOutput, error) { @@ -169,27 +169,27 @@ func (c *ControlTower) DisableControlRequest(input *DisableControlInput) (req *r // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - ServiceQuotaExceededException -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableControl func (c *ControlTower) DisableControl(input *DisableControlInput) (*DisableControlOutput, error) { @@ -272,27 +272,27 @@ func (c *ControlTower) EnableControlRequest(input *EnableControlInput) (req *req // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - ServiceQuotaExceededException -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl func (c *ControlTower) EnableControl(input *EnableControlInput) (*EnableControlOutput, error) { @@ -374,20 +374,20 @@ func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInpu // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation func (c *ControlTower) GetControlOperation(input *GetControlOperationInput) (*GetControlOperationOutput, error) { @@ -467,20 +467,20 @@ func (c *ControlTower) GetEnabledControlRequest(input *GetEnabledControlInput) ( // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl func (c *ControlTower) GetEnabledControl(input *GetEnabledControlInput) (*GetEnabledControlOutput, error) { @@ -548,7 +548,7 @@ func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOpera // GetLandingZoneOperation API operation for AWS Control Tower. // // Returns the status of the specified landing zone operation. Details for an -// operation are available for X days. +// operation are available for 60 days. // // 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 @@ -560,20 +560,20 @@ func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOpera // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation func (c *ControlTower) GetLandingZoneOperation(input *GetLandingZoneOperationInput) (*GetLandingZoneOperationOutput, error) { @@ -660,20 +660,20 @@ func (c *ControlTower) ListEnabledControlsRequest(input *ListEnabledControlsInpu // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls func (c *ControlTower) ListEnabledControls(input *ListEnabledControlsInput) (*ListEnabledControlsOutput, error) { @@ -801,7 +801,7 @@ func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (re // account. This API also creates an ARN for existing accounts that do not yet // have a landing zone ARN. // -// The return limit is one landing zone ARN. +// Returns one landing zone ARN. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -813,17 +813,17 @@ func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (re // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones func (c *ControlTower) ListLandingZones(input *ListLandingZonesInput) (*ListLandingZonesOutput, error) { @@ -954,14 +954,14 @@ func (c *ControlTower) ListTagsForResourceRequest(input *ListTagsForResourceInpu // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource func (c *ControlTower) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { @@ -1042,23 +1042,23 @@ func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (re // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - ConflictException -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - AccessDeniedException // You do not have sufficient access to perform this action. // // - ThrottlingException -// Request was denied due to request throttling. +// The request was denied due to request throttling. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone func (c *ControlTower) ResetLandingZone(input *ResetLandingZoneInput) (*ResetLandingZoneOutput, error) { @@ -1139,14 +1139,14 @@ func (c *ControlTower) TagResourceRequest(input *TagResourceInput) (req *request // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource func (c *ControlTower) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { @@ -1227,14 +1227,14 @@ func (c *ControlTower) UntagResourceRequest(input *UntagResourceInput) (req *req // Returned Error Types: // // - ValidationException -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. // // - InternalServerException -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. // // - ResourceNotFoundException -// Request references a resource which does not exist. +// The request references a resource that does not exist. // // See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource func (c *ControlTower) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { @@ -1322,7 +1322,7 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } -// Updating or deleting a resource can cause an inconsistent state. +// Updating or deleting the resource can cause an inconsistent state. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -1504,9 +1504,9 @@ func (s *DeleteLandingZoneInput) SetLandingZoneIdentifier(v string) *DeleteLandi type DeleteLandingZoneOutput struct { _ struct{} `type:"structure"` - // A unique identifier assigned to a DeleteLandingZone operation. You can use - // this identifier as an input of GetLandingZoneOperation to check the operation's - // status. + // >A unique identifier assigned to a DeleteLandingZone operation. You can use + // this identifier as an input parameter of GetLandingZoneOperation to check + // the operation's status. // // OperationIdentifier is a required field OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` @@ -1540,8 +1540,8 @@ type DisableControlInput struct { _ struct{} `type:"structure"` // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the Region deny control. For information - // on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + // permitted, with the exception of the landing zone Region deny control. For + // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // ControlIdentifier is a required field ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` @@ -1694,8 +1694,8 @@ type EnableControlInput struct { _ struct{} `type:"structure"` // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the Region deny control. For information - // on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + // permitted, with the exception of the landing zone Region deny control. For + // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // ControlIdentifier is a required field ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` @@ -2224,7 +2224,7 @@ func (s *GetLandingZoneOperationInput) SetOperationIdentifier(v string) *GetLand type GetLandingZoneOperationOutput struct { _ struct{} `type:"structure"` - // The landing zone operation details. + // Details about a landing zone operation. // // OperationDetails is a required field OperationDetails *LandingZoneOperationDetail `locationName:"operationDetails" type:"structure" required:"true"` @@ -2254,7 +2254,7 @@ func (s *GetLandingZoneOperationOutput) SetOperationDetails(v *LandingZoneOperat return s } -// Unexpected error during processing of request. +// An unexpected error occurred during processing of a request. type InternalServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2341,8 +2341,6 @@ type LandingZoneOperationDetail struct { // The landing zone operation start time. StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` - // The landing zone operation status. - // // Valid values: // // * SUCCEEDED: The landing zone operation succeeded. @@ -2517,7 +2515,7 @@ type ListEnabledControlsOutput struct { // EnabledControls is a required field EnabledControls []*EnabledControlSummary `locationName:"enabledControls" type:"list" required:"true"` - // Retrieves the next page of results. If the string is empty, the current response + // Retrieves the next page of results. If the string is empty, the response // is the end of the results. NextToken *string `locationName:"nextToken" type:"string"` } @@ -2555,7 +2553,7 @@ func (s *ListEnabledControlsOutput) SetNextToken(v string) *ListEnabledControlsO type ListLandingZonesInput struct { _ struct{} `type:"structure"` - // The maximum number of returned landing zone ARNs. + // The maximum number of returned landing zone ARNs, which is one. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` // The token to continue the list from a previous API call with the same parameters. @@ -2613,7 +2611,7 @@ type ListLandingZonesOutput struct { // LandingZones is a required field LandingZones []*LandingZoneSummary `locationName:"landingZones" type:"list" required:"true"` - // Retrieves the next page of results. If the string is empty, the current response + // Retrieves the next page of results. If the string is empty, the response // is the end of the results. NextToken *string `locationName:"nextToken" type:"string"` } @@ -2817,8 +2815,8 @@ type ResetLandingZoneOutput struct { _ struct{} `type:"structure"` // A unique identifier assigned to a ResetLandingZone operation. You can use - // this identifier as an input of GetLandingZoneOperation to check the operation's - // status. + // this identifier as an input parameter of GetLandingZoneOperation to check + // the operation's status. // // OperationIdentifier is a required field OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` @@ -2848,7 +2846,7 @@ func (s *ResetLandingZoneOutput) SetOperationIdentifier(v string) *ResetLandingZ return s } -// Request references a resource which does not exist. +// The request references a resource that does not exist. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2912,7 +2910,7 @@ func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } -// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` @@ -3062,7 +3060,7 @@ func (s TagResourceOutput) GoString() string { return s.String() } -// Request was denied due to request throttling. +// The request was denied due to request throttling. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -3072,7 +3070,7 @@ type ThrottlingException struct { // The ID of the service quota that was exceeded. QuotaCode *string `locationName:"quotaCode" type:"string"` - // The number of seconds the caller should wait before retrying. + // The number of seconds to wait before retrying. RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` // The ID of the service that is associated with the error. @@ -3220,7 +3218,7 @@ func (s UntagResourceOutput) GoString() string { return s.String() } -// The input fails to satisfy the constraints specified by an Amazon Web Services +// The input does not satisfy the constraints specified by an Amazon Web Services // service. type ValidationException struct { _ struct{} `type:"structure"` @@ -3311,6 +3309,9 @@ const ( // ControlOperationTypeDisableControl is a ControlOperationType enum value ControlOperationTypeDisableControl = "DISABLE_CONTROL" + + // ControlOperationTypeUpdateEnabledControl is a ControlOperationType enum value + ControlOperationTypeUpdateEnabledControl = "UPDATE_ENABLED_CONTROL" ) // ControlOperationType_Values returns all elements of the ControlOperationType enum @@ -3318,6 +3319,7 @@ func ControlOperationType_Values() []string { return []string{ ControlOperationTypeEnableControl, ControlOperationTypeDisableControl, + ControlOperationTypeUpdateEnabledControl, } } diff --git a/service/controltower/doc.go b/service/controltower/doc.go index d4b1f5c4044..9775a3363a7 100644 --- a/service/controltower/doc.go +++ b/service/controltower/doc.go @@ -16,7 +16,7 @@ // // - the ARN associated with a resource that you wish to tag or untag. // -// To get the controlIdentifier for your AWS Control Tower control: +// To get the controlIdentifier for your Amazon Web Services Control Tower control: // // The controlIdentifier is an ARN that is specified for each control. You can // view the controlIdentifier in the console on the Control details page, as diff --git a/service/controltower/errors.go b/service/controltower/errors.go index 5dd993b320a..edad8f034e1 100644 --- a/service/controltower/errors.go +++ b/service/controltower/errors.go @@ -17,38 +17,38 @@ const ( // ErrCodeConflictException for service response error code // "ConflictException". // - // Updating or deleting a resource can cause an inconsistent state. + // Updating or deleting the resource can cause an inconsistent state. ErrCodeConflictException = "ConflictException" // ErrCodeInternalServerException for service response error code // "InternalServerException". // - // Unexpected error during processing of request. + // An unexpected error occurred during processing of a request. ErrCodeInternalServerException = "InternalServerException" // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // - // Request references a resource which does not exist. + // The request references a resource that does not exist. ErrCodeResourceNotFoundException = "ResourceNotFoundException" // ErrCodeServiceQuotaExceededException for service response error code // "ServiceQuotaExceededException". // - // Request would cause a service quota to be exceeded. The limit is 10 concurrent + // The request would cause a service quota to be exceeded. The limit is 10 concurrent // operations. ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" // ErrCodeThrottlingException for service response error code // "ThrottlingException". // - // Request was denied due to request throttling. + // The request was denied due to request throttling. ErrCodeThrottlingException = "ThrottlingException" // ErrCodeValidationException for service response error code // "ValidationException". // - // The input fails to satisfy the constraints specified by an Amazon Web Services + // The input does not satisfy the constraints specified by an Amazon Web Services // service. ErrCodeValidationException = "ValidationException" ) diff --git a/service/efs/api.go b/service/efs/api.go index 9b5f66de85f..4ded1692a21 100644 --- a/service/efs/api.go +++ b/service/efs/api.go @@ -589,32 +589,39 @@ func (c *EFS) CreateReplicationConfigurationRequest(input *CreateReplicationConf // in the Amazon EFS User Guide. The replication configuration specifies the // following: // -// - Source file system - An existing EFS file system that you want replicated. +// - Source file system – The EFS file system that you want replicated. // The source file system cannot be a destination file system in an existing // replication configuration. // -// - Destination file system configuration - The configuration of the destination +// - Amazon Web Services Region – The Amazon Web Services Region in which +// the destination file system is created. Amazon EFS replication is available +// in all Amazon Web Services Regions in which EFS is available. The Region +// must be enabled. For more information, see Managing Amazon Web Services +// Regions (https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable) +// in the Amazon Web Services General Reference Reference Guide. +// +// - Destination file system configuration – The configuration of the destination // file system to which the source file system will be replicated. There // can only be one destination file system in a replication configuration. -// The destination file system configuration consists of the following properties: -// Amazon Web Services Region - The Amazon Web Services Region in which the -// destination file system is created. Amazon EFS replication is available -// in all Amazon Web Services Regions in which EFS is available. To use EFS -// replication in a Region that is disabled by default, you must first opt -// in to the Region. For more information, see Managing Amazon Web Services -// Regions (https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable) -// in the Amazon Web Services General Reference Reference Guide Availability -// Zone - If you want the destination file system to use EFS One Zone availability, -// you must specify the Availability Zone to create the file system in. For -// more information about EFS storage classes, see Amazon EFS storage classes -// (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) in the -// Amazon EFS User Guide. Encryption - All destination file systems are created -// with encryption at rest enabled. You can specify the Key Management Service -// (KMS) key that is used to encrypt the destination file system. If you -// don't specify a KMS key, your service-managed KMS key for Amazon EFS is -// used. After the file system is created, you cannot change the KMS key. -// -// The following properties are set by default: +// Parameters for the replication configuration include: File system ID – +// The ID of the destination file system for the replication. If no ID is +// provided, then EFS creates a new file system with the default settings. +// For existing file systems, the file system's replication overwrite protection +// must be disabled. For more information, see Replicating to an existing +// file system (https://docs.aws.amazon.com/efs/latest/ug/efs-replication#replicate-existing-destination). +// Availability Zone – If you want the destination file system to use One +// Zone storage, you must specify the Availability Zone to create the file +// system in. For more information, see EFS file system types (https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) +// in the Amazon EFS User Guide. Encryption – All destination file systems +// are created with encryption at rest enabled. You can specify the Key Management +// Service (KMS) key that is used to encrypt the destination file system. +// If you don't specify a KMS key, your service-managed KMS key for Amazon +// EFS is used. After the file system is created, you cannot change the KMS +// key. +// +// After the file system is created, you cannot change the KMS key. +// +// For new destination file systems, the following properties are set by default: // // - Performance mode - The destination file system's performance mode matches // that of the source file system, unless the destination file system uses @@ -625,11 +632,9 @@ func (c *EFS) CreateReplicationConfigurationRequest(input *CreateReplicationConf // that of the source file system. After the file system is created, you // can modify the throughput mode. // -// The following properties are turned off by default: -// // - Lifecycle management – Lifecycle management is not enabled on the // destination file system. After the destination file system is created, -// you can enable it. +// you can enable lifecycle management. // // - Automatic backups – Automatic daily backups are enabled on the destination // file system. After the file system is created, you can change this setting. @@ -684,6 +689,10 @@ func (c *EFS) CreateReplicationConfigurationRequest(input *CreateReplicationConf // Returned if the throughput mode or amount of provisioned throughput can't // be changed because the throughput limit of 1024 MiB/s has been reached. // +// - ConflictException +// Returned if the source file system in a replication is encrypted but the +// destination file system is unencrypted. +// // - InternalServerError // Returned if an error occurred on the server side. // @@ -1279,10 +1288,14 @@ func (c *EFS) DeleteReplicationConfigurationRequest(input *DeleteReplicationConf // DeleteReplicationConfiguration API operation for Amazon Elastic File System. // -// Deletes an existing replication configuration. Deleting a replication configuration +// Deletes a replication configuration. Deleting a replication configuration // ends the replication process. After a replication configuration is deleted, -// the destination file system is no longer read-only. You can write to the -// destination file system after its status becomes Writeable. +// the destination file system becomes Writeable and its replication overwrite +// protection is re-enabled. For more information, see Delete a replication +// configuration (https://docs.aws.amazon.com/efs/latest/ug/delete-replications.html). +// +// This operation requires permissions for the elasticfilesystem:DeleteReplicationConfiguration +// action. // // 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 @@ -2071,7 +2084,7 @@ func (c *EFS) DescribeLifecycleConfigurationRequest(input *DescribeLifecycleConf // DescribeLifecycleConfiguration API operation for Amazon Elastic File System. // // Returns the current LifecycleConfiguration object for the specified Amazon -// EFS file system. Llifecycle management uses the LifecycleConfiguration object +// EFS file system. Lifecycle management uses the LifecycleConfiguration object // to identify when to move files between storage classes. For a file system // without a LifecycleConfiguration object, the call returns an empty array // in the response. @@ -3302,7 +3315,7 @@ func (c *EFS) PutLifecycleConfigurationRequest(input *PutLifecycleConfigurationI // PutLifecycleConfiguration API operation for Amazon Elastic File System. // -// Use this action to manage storage of your file system. A LifecycleConfiguration +// Use this action to manage storage for your file system. A LifecycleConfiguration // consists of one or more LifecyclePolicy objects that define the following: // // - TransitionToIA – When to move files in the file system from primary @@ -3326,9 +3339,7 @@ func (c *EFS) PutLifecycleConfigurationRequest(input *PutLifecycleConfigurationI // to all files in the file system. If a LifecycleConfiguration object already // exists for the specified file system, a PutLifecycleConfiguration call modifies // the existing configuration. A PutLifecycleConfiguration call with an empty -// LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration -// for the file system. -// +// LifecyclePolicies array in the request body deletes any existing LifecycleConfiguration. // In the request, specify the following: // // - The ID for the file system for which you are enabling, disabling, or @@ -3692,6 +3703,118 @@ func (c *EFS) UpdateFileSystemWithContext(ctx aws.Context, input *UpdateFileSyst return out, req.Send() } +const opUpdateFileSystemProtection = "UpdateFileSystemProtection" + +// UpdateFileSystemProtectionRequest generates a "aws/request.Request" representing the +// client's request for the UpdateFileSystemProtection 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 UpdateFileSystemProtection for more information on using the UpdateFileSystemProtection +// 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 UpdateFileSystemProtectionRequest method. +// req, resp := client.UpdateFileSystemProtectionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UpdateFileSystemProtection +func (c *EFS) UpdateFileSystemProtectionRequest(input *UpdateFileSystemProtectionInput) (req *request.Request, output *UpdateFileSystemProtectionOutput) { + op := &request.Operation{ + Name: opUpdateFileSystemProtection, + HTTPMethod: "PUT", + HTTPPath: "/2015-02-01/file-systems/{FileSystemId}/protection", + } + + if input == nil { + input = &UpdateFileSystemProtectionInput{} + } + + output = &UpdateFileSystemProtectionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateFileSystemProtection API operation for Amazon Elastic File System. +// +// Updates protection on the file system. +// +// This operation requires permissions for the elasticfilesystem:UpdateFileSystemProtection +// action. +// +// 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 Elastic File System's +// API operation UpdateFileSystemProtection for usage and error information. +// +// Returned Error Types: +// +// - BadRequest +// Returned if the request is malformed or contains an error such as an invalid +// parameter value or a missing required parameter. +// +// - FileSystemNotFound +// Returned if the specified FileSystemId value doesn't exist in the requester's +// Amazon Web Services account. +// +// - IncorrectFileSystemLifeCycleState +// Returned if the file system's lifecycle state is not "available". +// +// - InsufficientThroughputCapacity +// Returned if there's not enough capacity to provision additional throughput. +// This value might be returned when you try to create a file system in provisioned +// throughput mode, when you attempt to increase the provisioned throughput +// of an existing file system, or when you attempt to change an existing file +// system from Bursting Throughput to Provisioned Throughput mode. Try again +// later. +// +// - InternalServerError +// Returned if an error occurred on the server side. +// +// - ThroughputLimitExceeded +// Returned if the throughput mode or amount of provisioned throughput can't +// be changed because the throughput limit of 1024 MiB/s has been reached. +// +// - ReplicationAlreadyExists +// Returned if the file system is already included in a replication configuration.> +// +// - TooManyRequests +// Returned if you don’t wait at least 24 hours before either changing the +// throughput mode, or decreasing the Provisioned Throughput value. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/UpdateFileSystemProtection +func (c *EFS) UpdateFileSystemProtection(input *UpdateFileSystemProtectionInput) (*UpdateFileSystemProtectionOutput, error) { + req, out := c.UpdateFileSystemProtectionRequest(input) + return out, req.Send() +} + +// UpdateFileSystemProtectionWithContext is the same as UpdateFileSystemProtection with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateFileSystemProtection 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 *EFS) UpdateFileSystemProtectionWithContext(ctx aws.Context, input *UpdateFileSystemProtectionInput, opts ...request.Option) (*UpdateFileSystemProtectionOutput, error) { + req, out := c.UpdateFileSystemProtectionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Returned if the access point that you are trying to create already exists, // with the creation token you provided in the request. type AccessPointAlreadyExists struct { @@ -4259,6 +4382,82 @@ func (s *BadRequest) RequestID() string { return s.RespMetadata.RequestID } +// Returned if the source file system in a replication is encrypted but the +// destination file system is unencrypted. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The error code is a string that uniquely identifies an error condition. It + // is meant to be read and understood by programs that detect and handle errors + // by type. + ErrorCode *string `min:"1" type:"string"` + + // The error message contains a generic description of the error condition in + // English. It is intended for a human audience. Simple programs display the + // message directly to the end user if they encounter an error condition they + // don't know how or don't care to handle. Sophisticated programs with more + // exhaustive error handling and proper internationalization are more likely + // to ignore the error message. + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + type CreateAccessPointInput struct { _ struct{} `type:"structure"` @@ -6823,7 +7022,8 @@ func (s *Destination) SetStatus(v string) *Destination { return s } -// Describes the destination file system to create in the replication configuration. +// Describes the new or existing destination file system for the replication +// configuration. type DestinationToCreate struct { _ struct{} `type:"structure"` @@ -6831,7 +7031,12 @@ type DestinationToCreate struct { // Availability Zone in which to create the destination file system. AvailabilityZoneName *string `min:"1" type:"string"` - // Specifies the Key Management Service (KMS) key that you want to use to encrypt + // The ID of the file system to use for the destination. The file system's replication + // overwrite replication must be disabled. If you do not provide an ID, then + // EFS creates a new file system for the replication destination. + FileSystemId *string `type:"string"` + + // Specify the Key Management Service (KMS) key that you want to use to encrypt // the destination file system. If you do not specify a KMS key, Amazon EFS // uses your default KMS key for Amazon EFS, /aws/elasticfilesystem. This ID // can be in one of the following formats: @@ -6891,6 +7096,12 @@ func (s *DestinationToCreate) SetAvailabilityZoneName(v string) *DestinationToCr return s } +// SetFileSystemId sets the FileSystemId field's value. +func (s *DestinationToCreate) SetFileSystemId(v string) *DestinationToCreate { + s.FileSystemId = &v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *DestinationToCreate) SetKmsKeyId(v string) *DestinationToCreate { s.KmsKeyId = &v @@ -7023,6 +7234,9 @@ type FileSystemDescription struct { // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` + // Describes the protection on the file system. + FileSystemProtection *FileSystemProtectionDescription `type:"structure"` + // The ID of an KMS key used to protect the encrypted file system. KmsKeyId *string `type:"string"` @@ -7140,6 +7354,12 @@ func (s *FileSystemDescription) SetFileSystemId(v string) *FileSystemDescription return s } +// SetFileSystemProtection sets the FileSystemProtection field's value. +func (s *FileSystemDescription) SetFileSystemProtection(v *FileSystemProtectionDescription) *FileSystemDescription { + s.FileSystemProtection = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *FileSystemDescription) SetKmsKeyId(v string) *FileSystemDescription { s.KmsKeyId = &v @@ -7433,6 +7653,53 @@ func (s *FileSystemNotFound) RequestID() string { return s.RespMetadata.RequestID } +// Describes the protection on a file system. +type FileSystemProtectionDescription struct { + _ struct{} `type:"structure"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// 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 FileSystemProtectionDescription) 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 FileSystemProtectionDescription) GoString() string { + return s.String() +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *FileSystemProtectionDescription) SetReplicationOverwriteProtection(v string) *FileSystemProtectionDescription { + s.ReplicationOverwriteProtection = &v + return s +} + // The latest known metered size (in bytes) of data stored in the file system, // in its Value field, and the time at which that size was determined in its // Timestamp field. The value doesn't represent the size of a consistent snapshot @@ -7983,8 +8250,8 @@ func (s *IpAddressInUse) RequestID() string { } // Describes a policy used by Lifecycle management that specifies when to transition -// files into and out of the Infrequent Access (IA) and Archive storage classes. -// For more information, see Managing file system storage (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). +// files into and out of storage classes. For more information, see Managing +// file system storage (https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html). // // When using the put-lifecycle-configuration CLI command or the PutLifecycleConfiguration // API action, Amazon EFS requires that each LifecyclePolicy object have only @@ -9268,6 +9535,81 @@ func (s *PutLifecycleConfigurationOutput) SetLifecyclePolicies(v []*LifecyclePol return s } +// Returned if the file system is already included in a replication configuration.> +type ReplicationAlreadyExists struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + // The error code is a string that uniquely identifies an error condition. It + // is meant to be read and understood by programs that detect and handle errors + // by type. + ErrorCode *string `min:"1" type:"string"` + + // The error message contains a generic description of the error condition in + // English. It is intended for a human audience. Simple programs display the + // message directly to the end user if they encounter an error condition they + // don't know how or don't care to handle. Sophisticated programs with more + // exhaustive error handling and proper internationalization are more likely + // to ignore the error message. + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ReplicationAlreadyExists) 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 ReplicationAlreadyExists) GoString() string { + return s.String() +} + +func newErrorReplicationAlreadyExists(v protocol.ResponseMetadata) error { + return &ReplicationAlreadyExists{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ReplicationAlreadyExists) Code() string { + return "ReplicationAlreadyExists" +} + +// Message returns the exception's message. +func (s *ReplicationAlreadyExists) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ReplicationAlreadyExists) OrigErr() error { + return nil +} + +func (s *ReplicationAlreadyExists) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ReplicationAlreadyExists) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ReplicationAlreadyExists) RequestID() string { + return s.RespMetadata.RequestID +} + // Describes the replication configuration for a specific file system. type ReplicationConfigurationDescription struct { _ struct{} `type:"structure"` @@ -10462,6 +10804,9 @@ type UpdateFileSystemOutput struct { // FileSystemId is a required field FileSystemId *string `type:"string" required:"true"` + // Describes the protection on the file system. + FileSystemProtection *FileSystemProtectionDescription `type:"structure"` + // The ID of an KMS key used to protect the encrypted file system. KmsKeyId *string `type:"string"` @@ -10579,6 +10924,12 @@ func (s *UpdateFileSystemOutput) SetFileSystemId(v string) *UpdateFileSystemOutp return s } +// SetFileSystemProtection sets the FileSystemProtection field's value. +func (s *UpdateFileSystemOutput) SetFileSystemProtection(v *FileSystemProtectionDescription) *UpdateFileSystemOutput { + s.FileSystemProtection = v + return s +} + // SetKmsKeyId sets the KmsKeyId field's value. func (s *UpdateFileSystemOutput) SetKmsKeyId(v string) *UpdateFileSystemOutput { s.KmsKeyId = &v @@ -10639,6 +10990,126 @@ func (s *UpdateFileSystemOutput) SetThroughputMode(v string) *UpdateFileSystemOu return s } +type UpdateFileSystemProtectionInput struct { + _ struct{} `type:"structure"` + + // The ID of the file system to update. + // + // FileSystemId is a required field + FileSystemId *string `location:"uri" locationName:"FileSystemId" type:"string" required:"true"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// 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 UpdateFileSystemProtectionInput) 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 UpdateFileSystemProtectionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateFileSystemProtectionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFileSystemProtectionInput"} + if s.FileSystemId == nil { + invalidParams.Add(request.NewErrParamRequired("FileSystemId")) + } + if s.FileSystemId != nil && len(*s.FileSystemId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("FileSystemId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *UpdateFileSystemProtectionInput) SetFileSystemId(v string) *UpdateFileSystemProtectionInput { + s.FileSystemId = &v + return s +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *UpdateFileSystemProtectionInput) SetReplicationOverwriteProtection(v string) *UpdateFileSystemProtectionInput { + s.ReplicationOverwriteProtection = &v + return s +} + +// Describes the protection on a file system. +type UpdateFileSystemProtectionOutput struct { + _ struct{} `type:"structure"` + + // The status of the file system's replication overwrite protection. + // + // * ENABLED – The file system cannot be used as the destination file system + // in a replication configuration. The file system is writeable. Replication + // overwrite protection is ENABLED by default. + // + // * DISABLED – The file system can be used as the destination file system + // in a replication configuration. The file system is read-only and can only + // be modified by EFS replication. + // + // * REPLICATING – The file system is being used as the destination file + // system in a replication configuration. The file system is read-only and + // is only modified only by EFS replication. + // + // If the replication configuration is deleted, the file system's replication + // overwrite protection is re-enabled, the file system becomes writeable. + ReplicationOverwriteProtection *string `type:"string" enum:"ReplicationOverwriteProtection"` +} + +// 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 UpdateFileSystemProtectionOutput) 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 UpdateFileSystemProtectionOutput) GoString() string { + return s.String() +} + +// SetReplicationOverwriteProtection sets the ReplicationOverwriteProtection field's value. +func (s *UpdateFileSystemProtectionOutput) SetReplicationOverwriteProtection(v string) *UpdateFileSystemProtectionOutput { + s.ReplicationOverwriteProtection = &v + return s +} + // Returned if the Backup service is not available in the Amazon Web Services // Region in which the request was made. type ValidationException struct { @@ -10765,6 +11236,26 @@ func PerformanceMode_Values() []string { } } +const ( + // ReplicationOverwriteProtectionEnabled is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionEnabled = "ENABLED" + + // ReplicationOverwriteProtectionDisabled is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionDisabled = "DISABLED" + + // ReplicationOverwriteProtectionReplicating is a ReplicationOverwriteProtection enum value + ReplicationOverwriteProtectionReplicating = "REPLICATING" +) + +// ReplicationOverwriteProtection_Values returns all elements of the ReplicationOverwriteProtection enum +func ReplicationOverwriteProtection_Values() []string { + return []string{ + ReplicationOverwriteProtectionEnabled, + ReplicationOverwriteProtectionDisabled, + ReplicationOverwriteProtectionReplicating, + } +} + const ( // ReplicationStatusEnabled is a ReplicationStatus enum value ReplicationStatusEnabled = "ENABLED" diff --git a/service/efs/efsiface/interface.go b/service/efs/efsiface/interface.go index c1b86d1aea0..d1d4d3bd5af 100644 --- a/service/efs/efsiface/interface.go +++ b/service/efs/efsiface/interface.go @@ -197,6 +197,10 @@ type EFSAPI interface { UpdateFileSystem(*efs.UpdateFileSystemInput) (*efs.UpdateFileSystemOutput, error) UpdateFileSystemWithContext(aws.Context, *efs.UpdateFileSystemInput, ...request.Option) (*efs.UpdateFileSystemOutput, error) UpdateFileSystemRequest(*efs.UpdateFileSystemInput) (*request.Request, *efs.UpdateFileSystemOutput) + + UpdateFileSystemProtection(*efs.UpdateFileSystemProtectionInput) (*efs.UpdateFileSystemProtectionOutput, error) + UpdateFileSystemProtectionWithContext(aws.Context, *efs.UpdateFileSystemProtectionInput, ...request.Option) (*efs.UpdateFileSystemProtectionOutput, error) + UpdateFileSystemProtectionRequest(*efs.UpdateFileSystemProtectionInput) (*request.Request, *efs.UpdateFileSystemProtectionOutput) } var _ EFSAPI = (*efs.EFS)(nil) diff --git a/service/efs/errors.go b/service/efs/errors.go index 04c23343b19..bda18785c00 100644 --- a/service/efs/errors.go +++ b/service/efs/errors.go @@ -46,6 +46,13 @@ const ( // parameter value or a missing required parameter. ErrCodeBadRequest = "BadRequest" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Returned if the source file system in a replication is encrypted but the + // destination file system is unencrypted. + ErrCodeConflictException = "ConflictException" + // ErrCodeDependencyTimeout for service response error code // "DependencyTimeout". // @@ -163,6 +170,12 @@ const ( // system specified. ErrCodePolicyNotFound = "PolicyNotFound" + // ErrCodeReplicationAlreadyExists for service response error code + // "ReplicationAlreadyExists". + // + // Returned if the file system is already included in a replication configuration.> + ErrCodeReplicationAlreadyExists = "ReplicationAlreadyExists" + // ErrCodeReplicationNotFound for service response error code // "ReplicationNotFound". // @@ -232,6 +245,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessPointNotFound": newErrorAccessPointNotFound, "AvailabilityZonesMismatch": newErrorAvailabilityZonesMismatch, "BadRequest": newErrorBadRequest, + "ConflictException": newErrorConflictException, "DependencyTimeout": newErrorDependencyTimeout, "FileSystemAlreadyExists": newErrorFileSystemAlreadyExists, "FileSystemInUse": newErrorFileSystemInUse, @@ -248,6 +262,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "NetworkInterfaceLimitExceeded": newErrorNetworkInterfaceLimitExceeded, "NoFreeAddressesInSubnet": newErrorNoFreeAddressesInSubnet, "PolicyNotFound": newErrorPolicyNotFound, + "ReplicationAlreadyExists": newErrorReplicationAlreadyExists, "ReplicationNotFound": newErrorReplicationNotFound, "SecurityGroupLimitExceeded": newErrorSecurityGroupLimitExceeded, "SecurityGroupNotFound": newErrorSecurityGroupNotFound, diff --git a/service/fis/api.go b/service/fis/api.go index c4a9805339f..808516b5420 100644 --- a/service/fis/api.go +++ b/service/fis/api.go @@ -72,7 +72,7 @@ func (c *FIS) CreateExperimentTemplateRequest(input *CreateExperimentTemplateInp // is running, the experiment is automatically stopped. You can define a // stop condition as a CloudWatch alarm. // -// For more information, see Experiment templates (https://docs.aws.amazon.com/fis/latest/userguide/experiment-templates.html) +// For more information, see experiment templates (https://docs.aws.amazon.com/fis/latest/userguide/experiment-templates.html) // in the Fault Injection Simulator User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -119,6 +119,98 @@ func (c *FIS) CreateExperimentTemplateWithContext(ctx aws.Context, input *Create return out, req.Send() } +const opCreateTargetAccountConfiguration = "CreateTargetAccountConfiguration" + +// CreateTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateTargetAccountConfiguration 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 CreateTargetAccountConfiguration for more information on using the CreateTargetAccountConfiguration +// 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 CreateTargetAccountConfigurationRequest method. +// req, resp := client.CreateTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateTargetAccountConfiguration +func (c *FIS) CreateTargetAccountConfigurationRequest(input *CreateTargetAccountConfigurationInput) (req *request.Request, output *CreateTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opCreateTargetAccountConfiguration, + HTTPMethod: "POST", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &CreateTargetAccountConfigurationInput{} + } + + output = &CreateTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Creates a target account configuration for the experiment template. A target +// account configuration is required when accountTargeting of experimentOptions +// is set to multi-account. For more information, see experiment options (https://docs.aws.amazon.com/fis/latest/userguide/experiment-options.html) +// in the Fault Injection Simulator User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation CreateTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ConflictException +// The request could not be processed because of a conflict. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ServiceQuotaExceededException +// You have exceeded your service quota. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/CreateTargetAccountConfiguration +func (c *FIS) CreateTargetAccountConfiguration(input *CreateTargetAccountConfigurationInput) (*CreateTargetAccountConfigurationOutput, error) { + req, out := c.CreateTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// CreateTargetAccountConfigurationWithContext is the same as CreateTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTargetAccountConfiguration 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 *FIS) CreateTargetAccountConfigurationWithContext(ctx aws.Context, input *CreateTargetAccountConfigurationInput, opts ...request.Option) (*CreateTargetAccountConfigurationOutput, error) { + req, out := c.CreateTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteExperimentTemplate = "DeleteExperimentTemplate" // DeleteExperimentTemplateRequest generates a "aws/request.Request" representing the @@ -202,6 +294,89 @@ func (c *FIS) DeleteExperimentTemplateWithContext(ctx aws.Context, input *Delete return out, req.Send() } +const opDeleteTargetAccountConfiguration = "DeleteTargetAccountConfiguration" + +// DeleteTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTargetAccountConfiguration 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 DeleteTargetAccountConfiguration for more information on using the DeleteTargetAccountConfiguration +// 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 DeleteTargetAccountConfigurationRequest method. +// req, resp := client.DeleteTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteTargetAccountConfiguration +func (c *FIS) DeleteTargetAccountConfigurationRequest(input *DeleteTargetAccountConfigurationInput) (req *request.Request, output *DeleteTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opDeleteTargetAccountConfiguration, + HTTPMethod: "DELETE", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &DeleteTargetAccountConfigurationInput{} + } + + output = &DeleteTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Deletes the specified target account configuration of the experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation DeleteTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/DeleteTargetAccountConfiguration +func (c *FIS) DeleteTargetAccountConfiguration(input *DeleteTargetAccountConfigurationInput) (*DeleteTargetAccountConfigurationOutput, error) { + req, out := c.DeleteTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// DeleteTargetAccountConfigurationWithContext is the same as DeleteTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTargetAccountConfiguration 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 *FIS) DeleteTargetAccountConfigurationWithContext(ctx aws.Context, input *DeleteTargetAccountConfigurationInput, opts ...request.Option) (*DeleteTargetAccountConfigurationOutput, error) { + req, out := c.DeleteTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetAction = "GetAction" // GetActionRequest generates a "aws/request.Request" representing the @@ -368,6 +543,90 @@ func (c *FIS) GetExperimentWithContext(ctx aws.Context, input *GetExperimentInpu return out, req.Send() } +const opGetExperimentTargetAccountConfiguration = "GetExperimentTargetAccountConfiguration" + +// GetExperimentTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetExperimentTargetAccountConfiguration 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 GetExperimentTargetAccountConfiguration for more information on using the GetExperimentTargetAccountConfiguration +// 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 GetExperimentTargetAccountConfigurationRequest method. +// req, resp := client.GetExperimentTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTargetAccountConfiguration +func (c *FIS) GetExperimentTargetAccountConfigurationRequest(input *GetExperimentTargetAccountConfigurationInput) (req *request.Request, output *GetExperimentTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opGetExperimentTargetAccountConfiguration, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &GetExperimentTargetAccountConfigurationInput{} + } + + output = &GetExperimentTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetExperimentTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Gets information about the specified target account configuration of the +// experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation GetExperimentTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetExperimentTargetAccountConfiguration +func (c *FIS) GetExperimentTargetAccountConfiguration(input *GetExperimentTargetAccountConfigurationInput) (*GetExperimentTargetAccountConfigurationOutput, error) { + req, out := c.GetExperimentTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// GetExperimentTargetAccountConfigurationWithContext is the same as GetExperimentTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetExperimentTargetAccountConfiguration 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 *FIS) GetExperimentTargetAccountConfigurationWithContext(ctx aws.Context, input *GetExperimentTargetAccountConfigurationInput, opts ...request.Option) (*GetExperimentTargetAccountConfigurationOutput, error) { + req, out := c.GetExperimentTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetExperimentTemplate = "GetExperimentTemplate" // GetExperimentTemplateRequest generates a "aws/request.Request" representing the @@ -451,6 +710,90 @@ func (c *FIS) GetExperimentTemplateWithContext(ctx aws.Context, input *GetExperi return out, req.Send() } +const opGetTargetAccountConfiguration = "GetTargetAccountConfiguration" + +// GetTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetTargetAccountConfiguration 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 GetTargetAccountConfiguration for more information on using the GetTargetAccountConfiguration +// 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 GetTargetAccountConfigurationRequest method. +// req, resp := client.GetTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetTargetAccountConfiguration +func (c *FIS) GetTargetAccountConfigurationRequest(input *GetTargetAccountConfigurationInput) (req *request.Request, output *GetTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opGetTargetAccountConfiguration, + HTTPMethod: "GET", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &GetTargetAccountConfigurationInput{} + } + + output = &GetTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Gets information about the specified target account configuration of the +// experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation GetTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/GetTargetAccountConfiguration +func (c *FIS) GetTargetAccountConfiguration(input *GetTargetAccountConfigurationInput) (*GetTargetAccountConfigurationOutput, error) { + req, out := c.GetTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// GetTargetAccountConfigurationWithContext is the same as GetTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetTargetAccountConfiguration 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 *FIS) GetTargetAccountConfigurationWithContext(ctx aws.Context, input *GetTargetAccountConfigurationInput, opts ...request.Option) (*GetTargetAccountConfigurationOutput, error) { + req, out := c.GetTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetTargetResourceType = "GetTargetResourceType" // GetTargetResourceTypeRequest generates a "aws/request.Request" representing the @@ -670,23 +1013,246 @@ func (c *FIS) ListActionsPagesWithContext(ctx aws.Context, input *ListActionsInp return p.Err() } -const opListExperimentTemplates = "ListExperimentTemplates" +const opListExperimentResolvedTargets = "ListExperimentResolvedTargets" -// ListExperimentTemplatesRequest generates a "aws/request.Request" representing the -// client's request for the ListExperimentTemplates operation. The "output" return +// ListExperimentResolvedTargetsRequest generates a "aws/request.Request" representing the +// client's request for the ListExperimentResolvedTargets 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 ListExperimentTemplates for more information on using the ListExperimentTemplates +// See ListExperimentResolvedTargets for more information on using the ListExperimentResolvedTargets // 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 ListExperimentTemplatesRequest method. +// // Example sending a request using the ListExperimentResolvedTargetsRequest method. +// req, resp := client.ListExperimentResolvedTargetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentResolvedTargets +func (c *FIS) ListExperimentResolvedTargetsRequest(input *ListExperimentResolvedTargetsInput) (req *request.Request, output *ListExperimentResolvedTargetsOutput) { + op := &request.Operation{ + Name: opListExperimentResolvedTargets, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/resolvedTargets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListExperimentResolvedTargetsInput{} + } + + output = &ListExperimentResolvedTargetsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExperimentResolvedTargets API operation for AWS Fault Injection Simulator. +// +// Lists the resolved targets information of the specified experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation ListExperimentResolvedTargets for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentResolvedTargets +func (c *FIS) ListExperimentResolvedTargets(input *ListExperimentResolvedTargetsInput) (*ListExperimentResolvedTargetsOutput, error) { + req, out := c.ListExperimentResolvedTargetsRequest(input) + return out, req.Send() +} + +// ListExperimentResolvedTargetsWithContext is the same as ListExperimentResolvedTargets with the addition of +// the ability to pass a context and additional request options. +// +// See ListExperimentResolvedTargets 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 *FIS) ListExperimentResolvedTargetsWithContext(ctx aws.Context, input *ListExperimentResolvedTargetsInput, opts ...request.Option) (*ListExperimentResolvedTargetsOutput, error) { + req, out := c.ListExperimentResolvedTargetsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListExperimentResolvedTargetsPages iterates over the pages of a ListExperimentResolvedTargets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListExperimentResolvedTargets 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 ListExperimentResolvedTargets operation. +// pageNum := 0 +// err := client.ListExperimentResolvedTargetsPages(params, +// func(page *fis.ListExperimentResolvedTargetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *FIS) ListExperimentResolvedTargetsPages(input *ListExperimentResolvedTargetsInput, fn func(*ListExperimentResolvedTargetsOutput, bool) bool) error { + return c.ListExperimentResolvedTargetsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListExperimentResolvedTargetsPagesWithContext same as ListExperimentResolvedTargetsPages 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 *FIS) ListExperimentResolvedTargetsPagesWithContext(ctx aws.Context, input *ListExperimentResolvedTargetsInput, fn func(*ListExperimentResolvedTargetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListExperimentResolvedTargetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListExperimentResolvedTargetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListExperimentResolvedTargetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListExperimentTargetAccountConfigurations = "ListExperimentTargetAccountConfigurations" + +// ListExperimentTargetAccountConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListExperimentTargetAccountConfigurations 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 ListExperimentTargetAccountConfigurations for more information on using the ListExperimentTargetAccountConfigurations +// 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 ListExperimentTargetAccountConfigurationsRequest method. +// req, resp := client.ListExperimentTargetAccountConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTargetAccountConfigurations +func (c *FIS) ListExperimentTargetAccountConfigurationsRequest(input *ListExperimentTargetAccountConfigurationsInput) (req *request.Request, output *ListExperimentTargetAccountConfigurationsOutput) { + op := &request.Operation{ + Name: opListExperimentTargetAccountConfigurations, + HTTPMethod: "GET", + HTTPPath: "/experiments/{id}/targetAccountConfigurations", + } + + if input == nil { + input = &ListExperimentTargetAccountConfigurationsInput{} + } + + output = &ListExperimentTargetAccountConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListExperimentTargetAccountConfigurations API operation for AWS Fault Injection Simulator. +// +// Lists the target account configurations of the specified experiment. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation ListExperimentTargetAccountConfigurations for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListExperimentTargetAccountConfigurations +func (c *FIS) ListExperimentTargetAccountConfigurations(input *ListExperimentTargetAccountConfigurationsInput) (*ListExperimentTargetAccountConfigurationsOutput, error) { + req, out := c.ListExperimentTargetAccountConfigurationsRequest(input) + return out, req.Send() +} + +// ListExperimentTargetAccountConfigurationsWithContext is the same as ListExperimentTargetAccountConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListExperimentTargetAccountConfigurations 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 *FIS) ListExperimentTargetAccountConfigurationsWithContext(ctx aws.Context, input *ListExperimentTargetAccountConfigurationsInput, opts ...request.Option) (*ListExperimentTargetAccountConfigurationsOutput, error) { + req, out := c.ListExperimentTargetAccountConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListExperimentTemplates = "ListExperimentTemplates" + +// ListExperimentTemplatesRequest generates a "aws/request.Request" representing the +// client's request for the ListExperimentTemplates 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 ListExperimentTemplates for more information on using the ListExperimentTemplates +// 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 ListExperimentTemplatesRequest method. // req, resp := client.ListExperimentTemplatesRequest(params) // // err := req.Send() @@ -1015,36 +1581,36 @@ func (c *FIS) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsFor return out, req.Send() } -const opListTargetResourceTypes = "ListTargetResourceTypes" +const opListTargetAccountConfigurations = "ListTargetAccountConfigurations" -// ListTargetResourceTypesRequest generates a "aws/request.Request" representing the -// client's request for the ListTargetResourceTypes operation. The "output" return +// ListTargetAccountConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListTargetAccountConfigurations 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 ListTargetResourceTypes for more information on using the ListTargetResourceTypes +// See ListTargetAccountConfigurations for more information on using the ListTargetAccountConfigurations // 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 ListTargetResourceTypesRequest method. -// req, resp := client.ListTargetResourceTypesRequest(params) +// // Example sending a request using the ListTargetAccountConfigurationsRequest method. +// req, resp := client.ListTargetAccountConfigurationsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetResourceTypes -func (c *FIS) ListTargetResourceTypesRequest(input *ListTargetResourceTypesInput) (req *request.Request, output *ListTargetResourceTypesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetAccountConfigurations +func (c *FIS) ListTargetAccountConfigurationsRequest(input *ListTargetAccountConfigurationsInput) (req *request.Request, output *ListTargetAccountConfigurationsOutput) { op := &request.Operation{ - Name: opListTargetResourceTypes, + Name: opListTargetAccountConfigurations, HTTPMethod: "GET", - HTTPPath: "/targetResourceTypes", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -1054,88 +1620,92 @@ func (c *FIS) ListTargetResourceTypesRequest(input *ListTargetResourceTypesInput } if input == nil { - input = &ListTargetResourceTypesInput{} + input = &ListTargetAccountConfigurationsInput{} } - output = &ListTargetResourceTypesOutput{} + output = &ListTargetAccountConfigurationsOutput{} req = c.newRequest(op, input, output) return } -// ListTargetResourceTypes API operation for AWS Fault Injection Simulator. +// ListTargetAccountConfigurations API operation for AWS Fault Injection Simulator. // -// Lists the target resource types. +// Lists the target account configurations of the specified experiment template. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Fault Injection Simulator's -// API operation ListTargetResourceTypes for usage and error information. +// API operation ListTargetAccountConfigurations for usage and error information. // // Returned Error Types: +// // - ValidationException // The specified input is not valid, or fails to satisfy the constraints for // the request. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetResourceTypes -func (c *FIS) ListTargetResourceTypes(input *ListTargetResourceTypesInput) (*ListTargetResourceTypesOutput, error) { - req, out := c.ListTargetResourceTypesRequest(input) +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetAccountConfigurations +func (c *FIS) ListTargetAccountConfigurations(input *ListTargetAccountConfigurationsInput) (*ListTargetAccountConfigurationsOutput, error) { + req, out := c.ListTargetAccountConfigurationsRequest(input) return out, req.Send() } -// ListTargetResourceTypesWithContext is the same as ListTargetResourceTypes with the addition of +// ListTargetAccountConfigurationsWithContext is the same as ListTargetAccountConfigurations with the addition of // the ability to pass a context and additional request options. // -// See ListTargetResourceTypes for details on how to use this API operation. +// See ListTargetAccountConfigurations 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 *FIS) ListTargetResourceTypesWithContext(ctx aws.Context, input *ListTargetResourceTypesInput, opts ...request.Option) (*ListTargetResourceTypesOutput, error) { - req, out := c.ListTargetResourceTypesRequest(input) +func (c *FIS) ListTargetAccountConfigurationsWithContext(ctx aws.Context, input *ListTargetAccountConfigurationsInput, opts ...request.Option) (*ListTargetAccountConfigurationsOutput, error) { + req, out := c.ListTargetAccountConfigurationsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTargetResourceTypesPages iterates over the pages of a ListTargetResourceTypes operation, +// ListTargetAccountConfigurationsPages iterates over the pages of a ListTargetAccountConfigurations operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTargetResourceTypes method for more information on how to use this operation. +// See ListTargetAccountConfigurations 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 ListTargetResourceTypes operation. +// // Example iterating over at most 3 pages of a ListTargetAccountConfigurations operation. // pageNum := 0 -// err := client.ListTargetResourceTypesPages(params, -// func(page *fis.ListTargetResourceTypesOutput, lastPage bool) bool { +// err := client.ListTargetAccountConfigurationsPages(params, +// func(page *fis.ListTargetAccountConfigurationsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *FIS) ListTargetResourceTypesPages(input *ListTargetResourceTypesInput, fn func(*ListTargetResourceTypesOutput, bool) bool) error { - return c.ListTargetResourceTypesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *FIS) ListTargetAccountConfigurationsPages(input *ListTargetAccountConfigurationsInput, fn func(*ListTargetAccountConfigurationsOutput, bool) bool) error { + return c.ListTargetAccountConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTargetResourceTypesPagesWithContext same as ListTargetResourceTypesPages except +// ListTargetAccountConfigurationsPagesWithContext same as ListTargetAccountConfigurationsPages 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 *FIS) ListTargetResourceTypesPagesWithContext(ctx aws.Context, input *ListTargetResourceTypesInput, fn func(*ListTargetResourceTypesOutput, bool) bool, opts ...request.Option) error { +func (c *FIS) ListTargetAccountConfigurationsPagesWithContext(ctx aws.Context, input *ListTargetAccountConfigurationsInput, fn func(*ListTargetAccountConfigurationsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTargetResourceTypesInput + var inCpy *ListTargetAccountConfigurationsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTargetResourceTypesRequest(inCpy) + req, _ := c.ListTargetAccountConfigurationsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -1143,7 +1713,7 @@ func (c *FIS) ListTargetResourceTypesPagesWithContext(ctx aws.Context, input *Li } for p.Next() { - if !fn(p.Page().(*ListTargetResourceTypesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListTargetAccountConfigurationsOutput), !p.HasNextPage()) { break } } @@ -1151,71 +1721,207 @@ func (c *FIS) ListTargetResourceTypesPagesWithContext(ctx aws.Context, input *Li return p.Err() } -const opStartExperiment = "StartExperiment" +const opListTargetResourceTypes = "ListTargetResourceTypes" -// StartExperimentRequest generates a "aws/request.Request" representing the -// client's request for the StartExperiment operation. The "output" return +// ListTargetResourceTypesRequest generates a "aws/request.Request" representing the +// client's request for the ListTargetResourceTypes 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 StartExperiment for more information on using the StartExperiment +// See ListTargetResourceTypes for more information on using the ListTargetResourceTypes // 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 StartExperimentRequest method. -// req, resp := client.StartExperimentRequest(params) +// // Example sending a request using the ListTargetResourceTypesRequest method. +// req, resp := client.ListTargetResourceTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StartExperiment -func (c *FIS) StartExperimentRequest(input *StartExperimentInput) (req *request.Request, output *StartExperimentOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetResourceTypes +func (c *FIS) ListTargetResourceTypesRequest(input *ListTargetResourceTypesInput) (req *request.Request, output *ListTargetResourceTypesOutput) { op := &request.Operation{ - Name: opStartExperiment, - HTTPMethod: "POST", - HTTPPath: "/experiments", + Name: opListTargetResourceTypes, + HTTPMethod: "GET", + HTTPPath: "/targetResourceTypes", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartExperimentInput{} + input = &ListTargetResourceTypesInput{} } - output = &StartExperimentOutput{} + output = &ListTargetResourceTypesOutput{} req = c.newRequest(op, input, output) return } -// StartExperiment API operation for AWS Fault Injection Simulator. +// ListTargetResourceTypes API operation for AWS Fault Injection Simulator. // -// Starts running an experiment from the specified experiment template. +// Lists the target resource types. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS Fault Injection Simulator's -// API operation StartExperiment for usage and error information. +// API operation ListTargetResourceTypes for usage and error information. // // Returned Error Types: -// // - ValidationException // The specified input is not valid, or fails to satisfy the constraints for // the request. // -// - ConflictException -// The request could not be processed because of a conflict. -// -// - ResourceNotFoundException -// The specified resource cannot be found. -// -// - ServiceQuotaExceededException +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/ListTargetResourceTypes +func (c *FIS) ListTargetResourceTypes(input *ListTargetResourceTypesInput) (*ListTargetResourceTypesOutput, error) { + req, out := c.ListTargetResourceTypesRequest(input) + return out, req.Send() +} + +// ListTargetResourceTypesWithContext is the same as ListTargetResourceTypes with the addition of +// the ability to pass a context and additional request options. +// +// See ListTargetResourceTypes 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 *FIS) ListTargetResourceTypesWithContext(ctx aws.Context, input *ListTargetResourceTypesInput, opts ...request.Option) (*ListTargetResourceTypesOutput, error) { + req, out := c.ListTargetResourceTypesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListTargetResourceTypesPages iterates over the pages of a ListTargetResourceTypes operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTargetResourceTypes 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 ListTargetResourceTypes operation. +// pageNum := 0 +// err := client.ListTargetResourceTypesPages(params, +// func(page *fis.ListTargetResourceTypesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *FIS) ListTargetResourceTypesPages(input *ListTargetResourceTypesInput, fn func(*ListTargetResourceTypesOutput, bool) bool) error { + return c.ListTargetResourceTypesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListTargetResourceTypesPagesWithContext same as ListTargetResourceTypesPages 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 *FIS) ListTargetResourceTypesPagesWithContext(ctx aws.Context, input *ListTargetResourceTypesInput, fn func(*ListTargetResourceTypesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTargetResourceTypesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTargetResourceTypesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTargetResourceTypesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opStartExperiment = "StartExperiment" + +// StartExperimentRequest generates a "aws/request.Request" representing the +// client's request for the StartExperiment 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 StartExperiment for more information on using the StartExperiment +// 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 StartExperimentRequest method. +// req, resp := client.StartExperimentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StartExperiment +func (c *FIS) StartExperimentRequest(input *StartExperimentInput) (req *request.Request, output *StartExperimentOutput) { + op := &request.Operation{ + Name: opStartExperiment, + HTTPMethod: "POST", + HTTPPath: "/experiments", + } + + if input == nil { + input = &StartExperimentInput{} + } + + output = &StartExperimentOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartExperiment API operation for AWS Fault Injection Simulator. +// +// Starts running an experiment from the specified experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation StartExperiment for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ConflictException +// The request could not be processed because of a conflict. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// - ServiceQuotaExceededException // You have exceeded your service quota. // // See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/StartExperiment @@ -1557,6 +2263,89 @@ func (c *FIS) UpdateExperimentTemplateWithContext(ctx aws.Context, input *Update return out, req.Send() } +const opUpdateTargetAccountConfiguration = "UpdateTargetAccountConfiguration" + +// UpdateTargetAccountConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTargetAccountConfiguration 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 UpdateTargetAccountConfiguration for more information on using the UpdateTargetAccountConfiguration +// 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 UpdateTargetAccountConfigurationRequest method. +// req, resp := client.UpdateTargetAccountConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateTargetAccountConfiguration +func (c *FIS) UpdateTargetAccountConfigurationRequest(input *UpdateTargetAccountConfigurationInput) (req *request.Request, output *UpdateTargetAccountConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateTargetAccountConfiguration, + HTTPMethod: "PATCH", + HTTPPath: "/experimentTemplates/{id}/targetAccountConfigurations/{accountId}", + } + + if input == nil { + input = &UpdateTargetAccountConfigurationInput{} + } + + output = &UpdateTargetAccountConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTargetAccountConfiguration API operation for AWS Fault Injection Simulator. +// +// Updates the target account configuration for the specified experiment template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Fault Injection Simulator's +// API operation UpdateTargetAccountConfiguration for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The specified input is not valid, or fails to satisfy the constraints for +// the request. +// +// - ResourceNotFoundException +// The specified resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01/UpdateTargetAccountConfiguration +func (c *FIS) UpdateTargetAccountConfiguration(input *UpdateTargetAccountConfigurationInput) (*UpdateTargetAccountConfigurationOutput, error) { + req, out := c.UpdateTargetAccountConfigurationRequest(input) + return out, req.Send() +} + +// UpdateTargetAccountConfigurationWithContext is the same as UpdateTargetAccountConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTargetAccountConfiguration 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 *FIS) UpdateTargetAccountConfigurationWithContext(ctx aws.Context, input *UpdateTargetAccountConfigurationInput, opts ...request.Option) (*UpdateTargetAccountConfigurationOutput, error) { + req, out := c.UpdateTargetAccountConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // Describes an action. For more information, see FIS actions (https://docs.aws.amazon.com/fis/latest/userguide/fis-actions-reference.html) // in the Fault Injection Simulator User Guide. type Action struct { @@ -1909,6 +2698,47 @@ func (s *CreateExperimentTemplateActionInput) SetTargets(v map[string]*string) * return s } +// Specifies experiment options for an experiment template. +type CreateExperimentTemplateExperimentOptionsInput_ struct { + _ struct{} `type:"structure"` + + // Specifies the account targeting setting for experiment options. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // Specifies the empty target resolution mode for experiment options. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// 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 CreateExperimentTemplateExperimentOptionsInput_) 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 CreateExperimentTemplateExperimentOptionsInput_) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *CreateExperimentTemplateExperimentOptionsInput_) SetAccountTargeting(v string) *CreateExperimentTemplateExperimentOptionsInput_ { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *CreateExperimentTemplateExperimentOptionsInput_) SetEmptyTargetResolutionMode(v string) *CreateExperimentTemplateExperimentOptionsInput_ { + s.EmptyTargetResolutionMode = &v + return s +} + type CreateExperimentTemplateInput struct { _ struct{} `type:"structure"` @@ -1926,6 +2756,9 @@ type CreateExperimentTemplateInput struct { // Description is a required field Description *string `locationName:"description" type:"string" required:"true"` + // The experiment options for the experiment template. + ExperimentOptions *CreateExperimentTemplateExperimentOptionsInput_ `locationName:"experimentOptions" type:"structure"` + // The configuration for experiment logging. LogConfiguration *CreateExperimentTemplateLogConfigurationInput_ `locationName:"logConfiguration" type:"structure"` @@ -2046,6 +2879,12 @@ func (s *CreateExperimentTemplateInput) SetDescription(v string) *CreateExperime return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *CreateExperimentTemplateInput) SetExperimentOptions(v *CreateExperimentTemplateExperimentOptionsInput_) *CreateExperimentTemplateInput { + s.ExperimentOptions = v + return s +} + // SetLogConfiguration sets the LogConfiguration field's value. func (s *CreateExperimentTemplateInput) SetLogConfiguration(v *CreateExperimentTemplateLogConfigurationInput_) *CreateExperimentTemplateInput { s.LogConfiguration = v @@ -2369,13 +3208,30 @@ func (s *CreateExperimentTemplateTargetInput) SetSelectionMode(v string) *Create return s } -type DeleteExperimentTemplateInput struct { - _ struct{} `type:"structure" nopayload:"true"` +type CreateTargetAccountConfigurationInput struct { + _ struct{} `type:"structure"` - // The ID of the experiment template. + // The AWS account ID of the target account. // - // Id is a required field - Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The experiment template ID. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + // + // RoleArn is a required field + RoleArn *string `locationName:"roleArn" min:"20" type:"string" required:"true"` } // String returns the string representation. @@ -2383,7 +3239,7 @@ type DeleteExperimentTemplateInput 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 DeleteExperimentTemplateInput) String() string { +func (s CreateTargetAccountConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -2392,17 +3248,136 @@ func (s DeleteExperimentTemplateInput) 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 DeleteExperimentTemplateInput) GoString() string { +func (s CreateTargetAccountConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteExperimentTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteExperimentTemplateInput"} - if s.Id == nil { - invalidParams.Add(request.NewErrParamRequired("Id")) +func (s *CreateTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) } - if s.Id != nil && len(*s.Id) < 1 { + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.RoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("RoleArn")) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *CreateTargetAccountConfigurationInput) SetAccountId(v string) *CreateTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTargetAccountConfigurationInput) SetClientToken(v string) *CreateTargetAccountConfigurationInput { + s.ClientToken = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateTargetAccountConfigurationInput) SetDescription(v string) *CreateTargetAccountConfigurationInput { + s.Description = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *CreateTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *CreateTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *CreateTargetAccountConfigurationInput) SetRoleArn(v string) *CreateTargetAccountConfigurationInput { + s.RoleArn = &v + return s +} + +type CreateTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" 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 CreateTargetAccountConfigurationOutput) 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 CreateTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *CreateTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *CreateTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + +type DeleteExperimentTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment template. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" 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 DeleteExperimentTemplateInput) 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 DeleteExperimentTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteExperimentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteExperimentTemplateInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } @@ -2449,6 +3424,103 @@ func (s *DeleteExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemp return s } +type DeleteTargetAccountConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" 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 DeleteTargetAccountConfigurationInput) 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 DeleteTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *DeleteTargetAccountConfigurationInput) SetAccountId(v string) *DeleteTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *DeleteTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *DeleteTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +type DeleteTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" 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 DeleteTargetAccountConfigurationOutput) 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 DeleteTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *DeleteTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *DeleteTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + // Describes an experiment. type Experiment struct { _ struct{} `type:"structure"` @@ -2462,6 +3534,9 @@ type Experiment struct { // The time that the experiment ended. EndTime *time.Time `locationName:"endTime" type:"timestamp"` + // The experiment options for the experiment. + ExperimentOptions *ExperimentOptions `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. ExperimentTemplateId *string `locationName:"experimentTemplateId" type:"string"` @@ -2487,6 +3562,9 @@ type Experiment struct { // The tags for the experiment. Tags map[string]*string `locationName:"tags" type:"map"` + // The count of target account configurations for the experiment. + TargetAccountConfigurationsCount *int64 `locationName:"targetAccountConfigurationsCount" type:"long"` + // The targets for the experiment. Targets map[string]*ExperimentTarget `locationName:"targets" type:"map"` } @@ -2527,6 +3605,12 @@ func (s *Experiment) SetEndTime(v time.Time) *Experiment { return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *Experiment) SetExperimentOptions(v *ExperimentOptions) *Experiment { + s.ExperimentOptions = v + return s +} + // SetExperimentTemplateId sets the ExperimentTemplateId field's value. func (s *Experiment) SetExperimentTemplateId(v string) *Experiment { s.ExperimentTemplateId = &v @@ -2575,6 +3659,12 @@ func (s *Experiment) SetTags(v map[string]*string) *Experiment { return s } +// SetTargetAccountConfigurationsCount sets the TargetAccountConfigurationsCount field's value. +func (s *Experiment) SetTargetAccountConfigurationsCount(v int64) *Experiment { + s.TargetAccountConfigurationsCount = &v + return s +} + // SetTargets sets the Targets field's value. func (s *Experiment) SetTargets(v map[string]*ExperimentTarget) *Experiment { s.Targets = v @@ -2800,6 +3890,47 @@ func (s *ExperimentLogConfiguration) SetS3Configuration(v *ExperimentS3LogConfig return s } +// Describes the options for an experiment. +type ExperimentOptions struct { + _ struct{} `type:"structure"` + + // The account targeting setting for an experiment. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // The empty target resolution mode for an experiment. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// 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 ExperimentOptions) 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 ExperimentOptions) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *ExperimentOptions) SetAccountTargeting(v string) *ExperimentOptions { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *ExperimentOptions) SetEmptyTargetResolutionMode(v string) *ExperimentOptions { + s.EmptyTargetResolutionMode = &v + return s +} + // Describes the configuration for experiment logging to Amazon S3. type ExperimentS3LogConfiguration struct { _ struct{} `type:"structure"` @@ -3068,15 +4199,18 @@ func (s *ExperimentTarget) SetSelectionMode(v string) *ExperimentTarget { return s } -// Describes a filter used for the target resources in an experiment. -type ExperimentTargetFilter struct { +// Describes a target account configuration for an experiment. +type ExperimentTargetAccountConfiguration struct { _ struct{} `type:"structure"` - // The attribute path for the filter. - Path *string `locationName:"path" type:"string"` + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` - // The attribute values for the filter. - Values []*string `locationName:"values" type:"list"` + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` } // String returns the string representation. @@ -3084,7 +4218,7 @@ type ExperimentTargetFilter 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 ExperimentTargetFilter) String() string { +func (s ExperimentTargetAccountConfiguration) String() string { return awsutil.Prettify(s) } @@ -3093,54 +4227,157 @@ func (s ExperimentTargetFilter) 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 ExperimentTargetFilter) GoString() string { +func (s ExperimentTargetAccountConfiguration) GoString() string { return s.String() } -// SetPath sets the Path field's value. -func (s *ExperimentTargetFilter) SetPath(v string) *ExperimentTargetFilter { - s.Path = &v +// SetAccountId sets the AccountId field's value. +func (s *ExperimentTargetAccountConfiguration) SetAccountId(v string) *ExperimentTargetAccountConfiguration { + s.AccountId = &v return s } -// SetValues sets the Values field's value. -func (s *ExperimentTargetFilter) SetValues(v []*string) *ExperimentTargetFilter { - s.Values = v +// SetDescription sets the Description field's value. +func (s *ExperimentTargetAccountConfiguration) SetDescription(v string) *ExperimentTargetAccountConfiguration { + s.Description = &v return s } -// Describes an experiment template. -type ExperimentTemplate struct { - _ struct{} `type:"structure"` +// SetRoleArn sets the RoleArn field's value. +func (s *ExperimentTargetAccountConfiguration) SetRoleArn(v string) *ExperimentTargetAccountConfiguration { + s.RoleArn = &v + return s +} - // The actions for the experiment. - Actions map[string]*ExperimentTemplateAction `locationName:"actions" type:"map"` +// Provides a summary of a target account configuration. +type ExperimentTargetAccountConfigurationSummary struct { + _ struct{} `type:"structure"` - // The time the experiment template was created. - CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` - // The description for the experiment template. + // The description of the target account. Description *string `locationName:"description" type:"string"` - // The ID of the experiment template. - Id *string `locationName:"id" type:"string"` - - // The time the experiment template was last updated. - LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"` - - // The configuration for experiment logging. - LogConfiguration *ExperimentTemplateLogConfiguration `locationName:"logConfiguration" type:"structure"` - - // The Amazon Resource Name (ARN) of an IAM role. + // The Amazon Resource Name (ARN) of an IAM role for the target account. RoleArn *string `locationName:"roleArn" min:"20" type:"string"` +} - // The stop conditions for the experiment. - StopConditions []*ExperimentTemplateStopCondition `locationName:"stopConditions" type:"list"` - - // The tags for the experiment template. - Tags map[string]*string `locationName:"tags" type:"map"` - - // The targets for the experiment. +// 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 ExperimentTargetAccountConfigurationSummary) 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 ExperimentTargetAccountConfigurationSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetAccountId(v string) *ExperimentTargetAccountConfigurationSummary { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetDescription(v string) *ExperimentTargetAccountConfigurationSummary { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *ExperimentTargetAccountConfigurationSummary) SetRoleArn(v string) *ExperimentTargetAccountConfigurationSummary { + s.RoleArn = &v + return s +} + +// Describes a filter used for the target resources in an experiment. +type ExperimentTargetFilter struct { + _ struct{} `type:"structure"` + + // The attribute path for the filter. + Path *string `locationName:"path" type:"string"` + + // The attribute values for the filter. + Values []*string `locationName:"values" 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 ExperimentTargetFilter) 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 ExperimentTargetFilter) GoString() string { + return s.String() +} + +// SetPath sets the Path field's value. +func (s *ExperimentTargetFilter) SetPath(v string) *ExperimentTargetFilter { + s.Path = &v + return s +} + +// SetValues sets the Values field's value. +func (s *ExperimentTargetFilter) SetValues(v []*string) *ExperimentTargetFilter { + s.Values = v + return s +} + +// Describes an experiment template. +type ExperimentTemplate struct { + _ struct{} `type:"structure"` + + // The actions for the experiment. + Actions map[string]*ExperimentTemplateAction `locationName:"actions" type:"map"` + + // The time the experiment template was created. + CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + + // The description for the experiment template. + Description *string `locationName:"description" type:"string"` + + // The experiment options for an experiment template. + ExperimentOptions *ExperimentTemplateExperimentOptions `locationName:"experimentOptions" type:"structure"` + + // The ID of the experiment template. + Id *string `locationName:"id" type:"string"` + + // The time the experiment template was last updated. + LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"` + + // The configuration for experiment logging. + LogConfiguration *ExperimentTemplateLogConfiguration `locationName:"logConfiguration" type:"structure"` + + // The Amazon Resource Name (ARN) of an IAM role. + RoleArn *string `locationName:"roleArn" min:"20" type:"string"` + + // The stop conditions for the experiment. + StopConditions []*ExperimentTemplateStopCondition `locationName:"stopConditions" type:"list"` + + // The tags for the experiment template. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The count of target account configurations for the experiment template. + TargetAccountConfigurationsCount *int64 `locationName:"targetAccountConfigurationsCount" type:"long"` + + // The targets for the experiment. Targets map[string]*ExperimentTemplateTarget `locationName:"targets" type:"map"` } @@ -3180,6 +4417,12 @@ func (s *ExperimentTemplate) SetDescription(v string) *ExperimentTemplate { return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *ExperimentTemplate) SetExperimentOptions(v *ExperimentTemplateExperimentOptions) *ExperimentTemplate { + s.ExperimentOptions = v + return s +} + // SetId sets the Id field's value. func (s *ExperimentTemplate) SetId(v string) *ExperimentTemplate { s.Id = &v @@ -3216,6 +4459,12 @@ func (s *ExperimentTemplate) SetTags(v map[string]*string) *ExperimentTemplate { return s } +// SetTargetAccountConfigurationsCount sets the TargetAccountConfigurationsCount field's value. +func (s *ExperimentTemplate) SetTargetAccountConfigurationsCount(v int64) *ExperimentTemplate { + s.TargetAccountConfigurationsCount = &v + return s +} + // SetTargets sets the Targets field's value. func (s *ExperimentTemplate) SetTargets(v map[string]*ExperimentTemplateTarget) *ExperimentTemplate { s.Targets = v @@ -3374,6 +4623,47 @@ func (s *ExperimentTemplateCloudWatchLogsLogConfigurationInput_) SetLogGroupArn( return s } +// Describes the experiment options for an experiment template. +type ExperimentTemplateExperimentOptions struct { + _ struct{} `type:"structure"` + + // The account targeting setting for an experiment template. + AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + + // The empty target resolution mode for an experiment template. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// 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 ExperimentTemplateExperimentOptions) 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 ExperimentTemplateExperimentOptions) GoString() string { + return s.String() +} + +// SetAccountTargeting sets the AccountTargeting field's value. +func (s *ExperimentTemplateExperimentOptions) SetAccountTargeting(v string) *ExperimentTemplateExperimentOptions { + s.AccountTargeting = &v + return s +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *ExperimentTemplateExperimentOptions) SetEmptyTargetResolutionMode(v string) *ExperimentTemplateExperimentOptions { + s.EmptyTargetResolutionMode = &v + return s +} + // Describes the configuration for experiment logging. type ExperimentTemplateLogConfiguration struct { _ struct{} `type:"structure"` @@ -3978,13 +5268,18 @@ func (s *GetExperimentOutput) SetExperiment(v *Experiment) *GetExperimentOutput return s } -type GetExperimentTemplateInput struct { +type GetExperimentTargetAccountConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of the experiment template. + // The AWS account ID of the target account. // - // Id is a required field - Id *string `location:"uri" locationName:"id" type:"string" required:"true"` + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` } // String returns the string representation. @@ -3992,7 +5287,7 @@ type GetExperimentTemplateInput 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 GetExperimentTemplateInput) String() string { +func (s GetExperimentTargetAccountConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -4001,18 +5296,24 @@ func (s GetExperimentTemplateInput) 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 GetExperimentTemplateInput) GoString() string { +func (s GetExperimentTargetAccountConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetExperimentTemplateInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetExperimentTemplateInput"} - if s.Id == nil { - invalidParams.Add(request.NewErrParamRequired("Id")) +func (s *GetExperimentTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExperimentTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) } - if s.Id != nil && len(*s.Id) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) } if invalidParams.Len() > 0 { @@ -4021,17 +5322,23 @@ func (s *GetExperimentTemplateInput) Validate() error { return nil } -// SetId sets the Id field's value. -func (s *GetExperimentTemplateInput) SetId(v string) *GetExperimentTemplateInput { - s.Id = &v +// SetAccountId sets the AccountId field's value. +func (s *GetExperimentTargetAccountConfigurationInput) SetAccountId(v string) *GetExperimentTargetAccountConfigurationInput { + s.AccountId = &v return s } -type GetExperimentTemplateOutput struct { +// SetExperimentId sets the ExperimentId field's value. +func (s *GetExperimentTargetAccountConfigurationInput) SetExperimentId(v string) *GetExperimentTargetAccountConfigurationInput { + s.ExperimentId = &v + return s +} + +type GetExperimentTargetAccountConfigurationOutput struct { _ struct{} `type:"structure"` - // Information about the experiment template. - ExperimentTemplate *ExperimentTemplate `locationName:"experimentTemplate" type:"structure"` + // Information about the target account configuration. + TargetAccountConfiguration *ExperimentTargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` } // String returns the string representation. @@ -4039,7 +5346,7 @@ type GetExperimentTemplateOutput 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 GetExperimentTemplateOutput) String() string { +func (s GetExperimentTargetAccountConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -4048,23 +5355,23 @@ func (s GetExperimentTemplateOutput) 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 GetExperimentTemplateOutput) GoString() string { +func (s GetExperimentTargetAccountConfigurationOutput) GoString() string { return s.String() } -// SetExperimentTemplate sets the ExperimentTemplate field's value. -func (s *GetExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemplate) *GetExperimentTemplateOutput { - s.ExperimentTemplate = v +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *GetExperimentTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *ExperimentTargetAccountConfiguration) *GetExperimentTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v return s } -type GetTargetResourceTypeInput struct { +type GetExperimentTemplateInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The resource type. + // The ID of the experiment template. // - // ResourceType is a required field - ResourceType *string `location:"uri" locationName:"resourceType" type:"string" required:"true"` + // Id is a required field + Id *string `location:"uri" locationName:"id" type:"string" required:"true"` } // String returns the string representation. @@ -4072,7 +5379,7 @@ type GetTargetResourceTypeInput 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 GetTargetResourceTypeInput) String() string { +func (s GetExperimentTemplateInput) String() string { return awsutil.Prettify(s) } @@ -4081,18 +5388,18 @@ func (s GetTargetResourceTypeInput) 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 GetTargetResourceTypeInput) GoString() string { +func (s GetExperimentTemplateInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetTargetResourceTypeInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetTargetResourceTypeInput"} - if s.ResourceType == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceType")) +func (s *GetExperimentTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetExperimentTemplateInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) } - if s.ResourceType != nil && len(*s.ResourceType) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } if invalidParams.Len() > 0 { @@ -4101,17 +5408,17 @@ func (s *GetTargetResourceTypeInput) Validate() error { return nil } -// SetResourceType sets the ResourceType field's value. -func (s *GetTargetResourceTypeInput) SetResourceType(v string) *GetTargetResourceTypeInput { - s.ResourceType = &v +// SetId sets the Id field's value. +func (s *GetExperimentTemplateInput) SetId(v string) *GetExperimentTemplateInput { + s.Id = &v return s } -type GetTargetResourceTypeOutput struct { +type GetExperimentTemplateOutput struct { _ struct{} `type:"structure"` - // Information about the resource type. - TargetResourceType *TargetResourceType `locationName:"targetResourceType" type:"structure"` + // Information about the experiment template. + ExperimentTemplate *ExperimentTemplate `locationName:"experimentTemplate" type:"structure"` } // String returns the string representation. @@ -4119,7 +5426,7 @@ type GetTargetResourceTypeOutput 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 GetTargetResourceTypeOutput) String() string { +func (s GetExperimentTemplateOutput) String() string { return awsutil.Prettify(s) } @@ -4128,25 +5435,28 @@ func (s GetTargetResourceTypeOutput) 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 GetTargetResourceTypeOutput) GoString() string { +func (s GetExperimentTemplateOutput) GoString() string { return s.String() } -// SetTargetResourceType sets the TargetResourceType field's value. -func (s *GetTargetResourceTypeOutput) SetTargetResourceType(v *TargetResourceType) *GetTargetResourceTypeOutput { - s.TargetResourceType = v +// SetExperimentTemplate sets the ExperimentTemplate field's value. +func (s *GetExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemplate) *GetExperimentTemplateOutput { + s.ExperimentTemplate = v return s } -type ListActionsInput struct { +type GetTargetAccountConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The maximum number of results to return with a single call. To retrieve the - // remaining results, make another call with the returned nextToken value. - MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` - // The token for the next page of results. - NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` } // String returns the string representation. @@ -4154,7 +5464,7 @@ type ListActionsInput 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 ListActionsInput) String() string { +func (s GetTargetAccountConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -4163,18 +5473,24 @@ func (s ListActionsInput) 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 ListActionsInput) GoString() string { +func (s GetTargetAccountConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListActionsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListActionsInput"} - if s.MaxResults != nil && *s.MaxResults < 1 { - invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) +func (s *GetTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) } - if s.NextToken != nil && len(*s.NextToken) < 1 { - invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) } if invalidParams.Len() > 0 { @@ -4183,27 +5499,23 @@ func (s *ListActionsInput) Validate() error { return nil } -// SetMaxResults sets the MaxResults field's value. -func (s *ListActionsInput) SetMaxResults(v int64) *ListActionsInput { - s.MaxResults = &v +// SetAccountId sets the AccountId field's value. +func (s *GetTargetAccountConfigurationInput) SetAccountId(v string) *GetTargetAccountConfigurationInput { + s.AccountId = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListActionsInput) SetNextToken(v string) *ListActionsInput { - s.NextToken = &v +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *GetTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *GetTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v return s } -type ListActionsOutput struct { +type GetTargetAccountConfigurationOutput struct { _ struct{} `type:"structure"` - // The actions. - Actions []*ActionSummary `locationName:"actions" type:"list"` - - // The token to use to retrieve the next page of results. This value is null - // when there are no more results to return. - NextToken *string `locationName:"nextToken" min:"1" type:"string"` + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" type:"structure"` } // String returns the string representation. @@ -4211,7 +5523,7 @@ type ListActionsOutput 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 ListActionsOutput) String() string { +func (s GetTargetAccountConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -4220,13 +5532,185 @@ func (s ListActionsOutput) 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 ListActionsOutput) GoString() string { +func (s GetTargetAccountConfigurationOutput) GoString() string { return s.String() } -// SetActions sets the Actions field's value. -func (s *ListActionsOutput) SetActions(v []*ActionSummary) *ListActionsOutput { - s.Actions = v +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *GetTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *GetTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + +type GetTargetResourceTypeInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The resource type. + // + // ResourceType is a required field + ResourceType *string `location:"uri" locationName:"resourceType" 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 GetTargetResourceTypeInput) 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 GetTargetResourceTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetTargetResourceTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetTargetResourceTypeInput"} + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.ResourceType != nil && len(*s.ResourceType) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceType", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetTargetResourceTypeInput) SetResourceType(v string) *GetTargetResourceTypeInput { + s.ResourceType = &v + return s +} + +type GetTargetResourceTypeOutput struct { + _ struct{} `type:"structure"` + + // Information about the resource type. + TargetResourceType *TargetResourceType `locationName:"targetResourceType" 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 GetTargetResourceTypeOutput) 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 GetTargetResourceTypeOutput) GoString() string { + return s.String() +} + +// SetTargetResourceType sets the TargetResourceType field's value. +func (s *GetTargetResourceTypeOutput) SetTargetResourceType(v *TargetResourceType) *GetTargetResourceTypeOutput { + s.TargetResourceType = v + return s +} + +type ListActionsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListActionsInput) 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 ListActionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListActionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListActionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListActionsInput) SetMaxResults(v int64) *ListActionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListActionsInput) SetNextToken(v string) *ListActionsInput { + s.NextToken = &v + return s +} + +type ListActionsOutput struct { + _ struct{} `type:"structure"` + + // The actions. + Actions []*ActionSummary `locationName:"actions" type:"list"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" 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 ListActionsOutput) 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 ListActionsOutput) GoString() string { + return s.String() +} + +// SetActions sets the Actions field's value. +func (s *ListActionsOutput) SetActions(v []*ActionSummary) *ListActionsOutput { + s.Actions = v return s } @@ -4236,6 +5720,232 @@ func (s *ListActionsOutput) SetNextToken(v string) *ListActionsOutput { return s } +type ListExperimentResolvedTargetsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` + + // The name of the target. + TargetName *string `location:"querystring" locationName:"targetName" 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 ListExperimentResolvedTargetsInput) 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 ListExperimentResolvedTargetsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExperimentResolvedTargetsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExperimentResolvedTargetsInput"} + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentId sets the ExperimentId field's value. +func (s *ListExperimentResolvedTargetsInput) SetExperimentId(v string) *ListExperimentResolvedTargetsInput { + s.ExperimentId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListExperimentResolvedTargetsInput) SetMaxResults(v int64) *ListExperimentResolvedTargetsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentResolvedTargetsInput) SetNextToken(v string) *ListExperimentResolvedTargetsInput { + s.NextToken = &v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *ListExperimentResolvedTargetsInput) SetTargetName(v string) *ListExperimentResolvedTargetsInput { + s.TargetName = &v + return s +} + +type ListExperimentResolvedTargetsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The resolved targets. + ResolvedTargets []*ResolvedTarget `locationName:"resolvedTargets" 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 ListExperimentResolvedTargetsOutput) 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 ListExperimentResolvedTargetsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentResolvedTargetsOutput) SetNextToken(v string) *ListExperimentResolvedTargetsOutput { + s.NextToken = &v + return s +} + +// SetResolvedTargets sets the ResolvedTargets field's value. +func (s *ListExperimentResolvedTargetsOutput) SetResolvedTargets(v []*ResolvedTarget) *ListExperimentResolvedTargetsOutput { + s.ResolvedTargets = v + return s +} + +type ListExperimentTargetAccountConfigurationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment. + // + // ExperimentId is a required field + ExperimentId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListExperimentTargetAccountConfigurationsInput) 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 ListExperimentTargetAccountConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListExperimentTargetAccountConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListExperimentTargetAccountConfigurationsInput"} + if s.ExperimentId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentId")) + } + if s.ExperimentId != nil && len(*s.ExperimentId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentId", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentId sets the ExperimentId field's value. +func (s *ListExperimentTargetAccountConfigurationsInput) SetExperimentId(v string) *ListExperimentTargetAccountConfigurationsInput { + s.ExperimentId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentTargetAccountConfigurationsInput) SetNextToken(v string) *ListExperimentTargetAccountConfigurationsInput { + s.NextToken = &v + return s +} + +type ListExperimentTargetAccountConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The target account configurations. + TargetAccountConfigurations []*ExperimentTargetAccountConfigurationSummary `locationName:"targetAccountConfigurations" 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 ListExperimentTargetAccountConfigurationsOutput) 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 ListExperimentTargetAccountConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExperimentTargetAccountConfigurationsOutput) SetNextToken(v string) *ListExperimentTargetAccountConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetTargetAccountConfigurations sets the TargetAccountConfigurations field's value. +func (s *ListExperimentTargetAccountConfigurationsOutput) SetTargetAccountConfigurations(v []*ExperimentTargetAccountConfigurationSummary) *ListExperimentTargetAccountConfigurationsOutput { + s.TargetAccountConfigurations = v + return s +} + type ListExperimentTemplatesInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4484,8 +6194,117 @@ func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResource type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` - // The tags for the resource. - Tags map[string]*string `locationName:"tags" type:"map"` + // The tags for the resource. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListTargetAccountConfigurationsInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The maximum number of results to return with a single call. To retrieve the + // remaining results, make another call with the returned nextToken value. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The token for the next page of results. + NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetAccountConfigurationsInput) 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 ListTargetAccountConfigurationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTargetAccountConfigurationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTargetAccountConfigurationsInput"} + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *ListTargetAccountConfigurationsInput) SetExperimentTemplateId(v string) *ListTargetAccountConfigurationsInput { + s.ExperimentTemplateId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTargetAccountConfigurationsInput) SetMaxResults(v int64) *ListTargetAccountConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTargetAccountConfigurationsInput) SetNextToken(v string) *ListTargetAccountConfigurationsInput { + s.NextToken = &v + return s +} + +type ListTargetAccountConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to retrieve the next page of results. This value is null + // when there are no more results to return. + NextToken *string `locationName:"nextToken" min:"1" type:"string"` + + // The target account configurations. + TargetAccountConfigurations []*TargetAccountConfigurationSummary `locationName:"targetAccountConfigurations" type:"list"` } // String returns the string representation. @@ -4493,7 +6312,7 @@ type ListTagsForResourceOutput 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 ListTagsForResourceOutput) String() string { +func (s ListTargetAccountConfigurationsOutput) String() string { return awsutil.Prettify(s) } @@ -4502,13 +6321,19 @@ func (s ListTagsForResourceOutput) 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 ListTagsForResourceOutput) GoString() string { +func (s ListTargetAccountConfigurationsOutput) GoString() string { return s.String() } -// SetTags sets the Tags field's value. -func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { - s.Tags = v +// SetNextToken sets the NextToken field's value. +func (s *ListTargetAccountConfigurationsOutput) SetNextToken(v string) *ListTargetAccountConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetTargetAccountConfigurations sets the TargetAccountConfigurations field's value. +func (s *ListTargetAccountConfigurationsOutput) SetTargetAccountConfigurations(v []*TargetAccountConfigurationSummary) *ListTargetAccountConfigurationsOutput { + s.TargetAccountConfigurations = v return s } @@ -4610,6 +6435,56 @@ func (s *ListTargetResourceTypesOutput) SetTargetResourceTypes(v []*TargetResour return s } +// Describes a resolved target. +type ResolvedTarget struct { + _ struct{} `type:"structure"` + + // The resource type of the target. + ResourceType *string `locationName:"resourceType" type:"string"` + + // Information about the target. + TargetInformation map[string]*string `locationName:"targetInformation" type:"map"` + + // The name of the target. + TargetName *string `locationName:"targetName" 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 ResolvedTarget) 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 ResolvedTarget) GoString() string { + return s.String() +} + +// SetResourceType sets the ResourceType field's value. +func (s *ResolvedTarget) SetResourceType(v string) *ResolvedTarget { + s.ResourceType = &v + return s +} + +// SetTargetInformation sets the TargetInformation field's value. +func (s *ResolvedTarget) SetTargetInformation(v map[string]*string) *ResolvedTarget { + s.TargetInformation = v + return s +} + +// SetTargetName sets the TargetName field's value. +func (s *ResolvedTarget) SetTargetName(v string) *ResolvedTarget { + s.TargetName = &v + return s +} + // The specified resource cannot be found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -5002,6 +6877,106 @@ func (s TagResourceOutput) GoString() string { return s.String() } +// Describes a target account configuration. +type TargetAccountConfiguration struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" 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 TargetAccountConfiguration) 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 TargetAccountConfiguration) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *TargetAccountConfiguration) SetAccountId(v string) *TargetAccountConfiguration { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TargetAccountConfiguration) SetDescription(v string) *TargetAccountConfiguration { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TargetAccountConfiguration) SetRoleArn(v string) *TargetAccountConfiguration { + s.RoleArn = &v + return s +} + +// Provides a summary of a target account configuration. +type TargetAccountConfigurationSummary struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + AccountId *string `locationName:"accountId" min:"12" type:"string"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" 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 TargetAccountConfigurationSummary) 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 TargetAccountConfigurationSummary) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *TargetAccountConfigurationSummary) SetAccountId(v string) *TargetAccountConfigurationSummary { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *TargetAccountConfigurationSummary) SetDescription(v string) *TargetAccountConfigurationSummary { + s.Description = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *TargetAccountConfigurationSummary) SetRoleArn(v string) *TargetAccountConfigurationSummary { + s.RoleArn = &v + return s +} + // Describes a resource type. type TargetResourceType struct { _ struct{} `type:"structure"` @@ -5284,6 +7259,38 @@ func (s *UpdateExperimentTemplateActionInputItem) SetTargets(v map[string]*strin return s } +// Specifies an experiment option for an experiment template. +type UpdateExperimentTemplateExperimentOptionsInput_ struct { + _ struct{} `type:"structure"` + + // The empty target resolution mode of the experiment template. + EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` +} + +// 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 UpdateExperimentTemplateExperimentOptionsInput_) 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 UpdateExperimentTemplateExperimentOptionsInput_) GoString() string { + return s.String() +} + +// SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. +func (s *UpdateExperimentTemplateExperimentOptionsInput_) SetEmptyTargetResolutionMode(v string) *UpdateExperimentTemplateExperimentOptionsInput_ { + s.EmptyTargetResolutionMode = &v + return s +} + type UpdateExperimentTemplateInput struct { _ struct{} `type:"structure"` @@ -5293,6 +7300,9 @@ type UpdateExperimentTemplateInput struct { // A description for the template. Description *string `locationName:"description" type:"string"` + // The experiment options for the experiment template. + ExperimentOptions *UpdateExperimentTemplateExperimentOptionsInput_ `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. // // Id is a required field @@ -5386,6 +7396,12 @@ func (s *UpdateExperimentTemplateInput) SetDescription(v string) *UpdateExperime return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *UpdateExperimentTemplateInput) SetExperimentOptions(v *UpdateExperimentTemplateExperimentOptionsInput_) *UpdateExperimentTemplateInput { + s.ExperimentOptions = v + return s +} + // SetId sets the Id field's value. func (s *UpdateExperimentTemplateInput) SetId(v string) *UpdateExperimentTemplateInput { s.Id = &v @@ -5688,6 +7704,124 @@ func (s *UpdateExperimentTemplateTargetInput) SetSelectionMode(v string) *Update return s } +type UpdateTargetAccountConfigurationInput struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the target account. + // + // AccountId is a required field + AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` + + // The description of the target account. + Description *string `locationName:"description" type:"string"` + + // The ID of the experiment template. + // + // ExperimentTemplateId is a required field + ExperimentTemplateId *string `location:"uri" locationName:"id" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of an IAM role for the target account. + RoleArn *string `locationName:"roleArn" min:"20" 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 UpdateTargetAccountConfigurationInput) 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 UpdateTargetAccountConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTargetAccountConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTargetAccountConfigurationInput"} + if s.AccountId == nil { + invalidParams.Add(request.NewErrParamRequired("AccountId")) + } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } + if s.ExperimentTemplateId == nil { + invalidParams.Add(request.NewErrParamRequired("ExperimentTemplateId")) + } + if s.ExperimentTemplateId != nil && len(*s.ExperimentTemplateId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ExperimentTemplateId", 1)) + } + if s.RoleArn != nil && len(*s.RoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("RoleArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAccountId sets the AccountId field's value. +func (s *UpdateTargetAccountConfigurationInput) SetAccountId(v string) *UpdateTargetAccountConfigurationInput { + s.AccountId = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateTargetAccountConfigurationInput) SetDescription(v string) *UpdateTargetAccountConfigurationInput { + s.Description = &v + return s +} + +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *UpdateTargetAccountConfigurationInput) SetExperimentTemplateId(v string) *UpdateTargetAccountConfigurationInput { + s.ExperimentTemplateId = &v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *UpdateTargetAccountConfigurationInput) SetRoleArn(v string) *UpdateTargetAccountConfigurationInput { + s.RoleArn = &v + return s +} + +type UpdateTargetAccountConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Information about the target account configuration. + TargetAccountConfiguration *TargetAccountConfiguration `locationName:"targetAccountConfiguration" 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 UpdateTargetAccountConfigurationOutput) 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 UpdateTargetAccountConfigurationOutput) GoString() string { + return s.String() +} + +// SetTargetAccountConfiguration sets the TargetAccountConfiguration field's value. +func (s *UpdateTargetAccountConfigurationOutput) SetTargetAccountConfiguration(v *TargetAccountConfiguration) *UpdateTargetAccountConfigurationOutput { + s.TargetAccountConfiguration = v + return s +} + // The specified input is not valid, or fails to satisfy the constraints for // the request. type ValidationException struct { @@ -5753,6 +7887,38 @@ func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } +const ( + // AccountTargetingSingleAccount is a AccountTargeting enum value + AccountTargetingSingleAccount = "single-account" + + // AccountTargetingMultiAccount is a AccountTargeting enum value + AccountTargetingMultiAccount = "multi-account" +) + +// AccountTargeting_Values returns all elements of the AccountTargeting enum +func AccountTargeting_Values() []string { + return []string{ + AccountTargetingSingleAccount, + AccountTargetingMultiAccount, + } +} + +const ( + // EmptyTargetResolutionModeFail is a EmptyTargetResolutionMode enum value + EmptyTargetResolutionModeFail = "fail" + + // EmptyTargetResolutionModeSkip is a EmptyTargetResolutionMode enum value + EmptyTargetResolutionModeSkip = "skip" +) + +// EmptyTargetResolutionMode_Values returns all elements of the EmptyTargetResolutionMode enum +func EmptyTargetResolutionMode_Values() []string { + return []string{ + EmptyTargetResolutionModeFail, + EmptyTargetResolutionModeSkip, + } +} + const ( // ExperimentActionStatusPending is a ExperimentActionStatus enum value ExperimentActionStatusPending = "pending" @@ -5777,6 +7943,9 @@ const ( // ExperimentActionStatusFailed is a ExperimentActionStatus enum value ExperimentActionStatusFailed = "failed" + + // ExperimentActionStatusSkipped is a ExperimentActionStatus enum value + ExperimentActionStatusSkipped = "skipped" ) // ExperimentActionStatus_Values returns all elements of the ExperimentActionStatus enum @@ -5790,6 +7959,7 @@ func ExperimentActionStatus_Values() []string { ExperimentActionStatusStopping, ExperimentActionStatusStopped, ExperimentActionStatusFailed, + ExperimentActionStatusSkipped, } } diff --git a/service/fis/fisiface/interface.go b/service/fis/fisiface/interface.go index 93f53cae644..e9d3aafb51c 100644 --- a/service/fis/fisiface/interface.go +++ b/service/fis/fisiface/interface.go @@ -64,10 +64,18 @@ type FISAPI interface { CreateExperimentTemplateWithContext(aws.Context, *fis.CreateExperimentTemplateInput, ...request.Option) (*fis.CreateExperimentTemplateOutput, error) CreateExperimentTemplateRequest(*fis.CreateExperimentTemplateInput) (*request.Request, *fis.CreateExperimentTemplateOutput) + CreateTargetAccountConfiguration(*fis.CreateTargetAccountConfigurationInput) (*fis.CreateTargetAccountConfigurationOutput, error) + CreateTargetAccountConfigurationWithContext(aws.Context, *fis.CreateTargetAccountConfigurationInput, ...request.Option) (*fis.CreateTargetAccountConfigurationOutput, error) + CreateTargetAccountConfigurationRequest(*fis.CreateTargetAccountConfigurationInput) (*request.Request, *fis.CreateTargetAccountConfigurationOutput) + DeleteExperimentTemplate(*fis.DeleteExperimentTemplateInput) (*fis.DeleteExperimentTemplateOutput, error) DeleteExperimentTemplateWithContext(aws.Context, *fis.DeleteExperimentTemplateInput, ...request.Option) (*fis.DeleteExperimentTemplateOutput, error) DeleteExperimentTemplateRequest(*fis.DeleteExperimentTemplateInput) (*request.Request, *fis.DeleteExperimentTemplateOutput) + DeleteTargetAccountConfiguration(*fis.DeleteTargetAccountConfigurationInput) (*fis.DeleteTargetAccountConfigurationOutput, error) + DeleteTargetAccountConfigurationWithContext(aws.Context, *fis.DeleteTargetAccountConfigurationInput, ...request.Option) (*fis.DeleteTargetAccountConfigurationOutput, error) + DeleteTargetAccountConfigurationRequest(*fis.DeleteTargetAccountConfigurationInput) (*request.Request, *fis.DeleteTargetAccountConfigurationOutput) + GetAction(*fis.GetActionInput) (*fis.GetActionOutput, error) GetActionWithContext(aws.Context, *fis.GetActionInput, ...request.Option) (*fis.GetActionOutput, error) GetActionRequest(*fis.GetActionInput) (*request.Request, *fis.GetActionOutput) @@ -76,10 +84,18 @@ type FISAPI interface { GetExperimentWithContext(aws.Context, *fis.GetExperimentInput, ...request.Option) (*fis.GetExperimentOutput, error) GetExperimentRequest(*fis.GetExperimentInput) (*request.Request, *fis.GetExperimentOutput) + GetExperimentTargetAccountConfiguration(*fis.GetExperimentTargetAccountConfigurationInput) (*fis.GetExperimentTargetAccountConfigurationOutput, error) + GetExperimentTargetAccountConfigurationWithContext(aws.Context, *fis.GetExperimentTargetAccountConfigurationInput, ...request.Option) (*fis.GetExperimentTargetAccountConfigurationOutput, error) + GetExperimentTargetAccountConfigurationRequest(*fis.GetExperimentTargetAccountConfigurationInput) (*request.Request, *fis.GetExperimentTargetAccountConfigurationOutput) + GetExperimentTemplate(*fis.GetExperimentTemplateInput) (*fis.GetExperimentTemplateOutput, error) GetExperimentTemplateWithContext(aws.Context, *fis.GetExperimentTemplateInput, ...request.Option) (*fis.GetExperimentTemplateOutput, error) GetExperimentTemplateRequest(*fis.GetExperimentTemplateInput) (*request.Request, *fis.GetExperimentTemplateOutput) + GetTargetAccountConfiguration(*fis.GetTargetAccountConfigurationInput) (*fis.GetTargetAccountConfigurationOutput, error) + GetTargetAccountConfigurationWithContext(aws.Context, *fis.GetTargetAccountConfigurationInput, ...request.Option) (*fis.GetTargetAccountConfigurationOutput, error) + GetTargetAccountConfigurationRequest(*fis.GetTargetAccountConfigurationInput) (*request.Request, *fis.GetTargetAccountConfigurationOutput) + GetTargetResourceType(*fis.GetTargetResourceTypeInput) (*fis.GetTargetResourceTypeOutput, error) GetTargetResourceTypeWithContext(aws.Context, *fis.GetTargetResourceTypeInput, ...request.Option) (*fis.GetTargetResourceTypeOutput, error) GetTargetResourceTypeRequest(*fis.GetTargetResourceTypeInput) (*request.Request, *fis.GetTargetResourceTypeOutput) @@ -91,6 +107,17 @@ type FISAPI interface { ListActionsPages(*fis.ListActionsInput, func(*fis.ListActionsOutput, bool) bool) error ListActionsPagesWithContext(aws.Context, *fis.ListActionsInput, func(*fis.ListActionsOutput, bool) bool, ...request.Option) error + ListExperimentResolvedTargets(*fis.ListExperimentResolvedTargetsInput) (*fis.ListExperimentResolvedTargetsOutput, error) + ListExperimentResolvedTargetsWithContext(aws.Context, *fis.ListExperimentResolvedTargetsInput, ...request.Option) (*fis.ListExperimentResolvedTargetsOutput, error) + ListExperimentResolvedTargetsRequest(*fis.ListExperimentResolvedTargetsInput) (*request.Request, *fis.ListExperimentResolvedTargetsOutput) + + ListExperimentResolvedTargetsPages(*fis.ListExperimentResolvedTargetsInput, func(*fis.ListExperimentResolvedTargetsOutput, bool) bool) error + ListExperimentResolvedTargetsPagesWithContext(aws.Context, *fis.ListExperimentResolvedTargetsInput, func(*fis.ListExperimentResolvedTargetsOutput, bool) bool, ...request.Option) error + + ListExperimentTargetAccountConfigurations(*fis.ListExperimentTargetAccountConfigurationsInput) (*fis.ListExperimentTargetAccountConfigurationsOutput, error) + ListExperimentTargetAccountConfigurationsWithContext(aws.Context, *fis.ListExperimentTargetAccountConfigurationsInput, ...request.Option) (*fis.ListExperimentTargetAccountConfigurationsOutput, error) + ListExperimentTargetAccountConfigurationsRequest(*fis.ListExperimentTargetAccountConfigurationsInput) (*request.Request, *fis.ListExperimentTargetAccountConfigurationsOutput) + ListExperimentTemplates(*fis.ListExperimentTemplatesInput) (*fis.ListExperimentTemplatesOutput, error) ListExperimentTemplatesWithContext(aws.Context, *fis.ListExperimentTemplatesInput, ...request.Option) (*fis.ListExperimentTemplatesOutput, error) ListExperimentTemplatesRequest(*fis.ListExperimentTemplatesInput) (*request.Request, *fis.ListExperimentTemplatesOutput) @@ -109,6 +136,13 @@ type FISAPI interface { ListTagsForResourceWithContext(aws.Context, *fis.ListTagsForResourceInput, ...request.Option) (*fis.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*fis.ListTagsForResourceInput) (*request.Request, *fis.ListTagsForResourceOutput) + ListTargetAccountConfigurations(*fis.ListTargetAccountConfigurationsInput) (*fis.ListTargetAccountConfigurationsOutput, error) + ListTargetAccountConfigurationsWithContext(aws.Context, *fis.ListTargetAccountConfigurationsInput, ...request.Option) (*fis.ListTargetAccountConfigurationsOutput, error) + ListTargetAccountConfigurationsRequest(*fis.ListTargetAccountConfigurationsInput) (*request.Request, *fis.ListTargetAccountConfigurationsOutput) + + ListTargetAccountConfigurationsPages(*fis.ListTargetAccountConfigurationsInput, func(*fis.ListTargetAccountConfigurationsOutput, bool) bool) error + ListTargetAccountConfigurationsPagesWithContext(aws.Context, *fis.ListTargetAccountConfigurationsInput, func(*fis.ListTargetAccountConfigurationsOutput, bool) bool, ...request.Option) error + ListTargetResourceTypes(*fis.ListTargetResourceTypesInput) (*fis.ListTargetResourceTypesOutput, error) ListTargetResourceTypesWithContext(aws.Context, *fis.ListTargetResourceTypesInput, ...request.Option) (*fis.ListTargetResourceTypesOutput, error) ListTargetResourceTypesRequest(*fis.ListTargetResourceTypesInput) (*request.Request, *fis.ListTargetResourceTypesOutput) @@ -135,6 +169,10 @@ type FISAPI interface { UpdateExperimentTemplate(*fis.UpdateExperimentTemplateInput) (*fis.UpdateExperimentTemplateOutput, error) UpdateExperimentTemplateWithContext(aws.Context, *fis.UpdateExperimentTemplateInput, ...request.Option) (*fis.UpdateExperimentTemplateOutput, error) UpdateExperimentTemplateRequest(*fis.UpdateExperimentTemplateInput) (*request.Request, *fis.UpdateExperimentTemplateOutput) + + UpdateTargetAccountConfiguration(*fis.UpdateTargetAccountConfigurationInput) (*fis.UpdateTargetAccountConfigurationOutput, error) + UpdateTargetAccountConfigurationWithContext(aws.Context, *fis.UpdateTargetAccountConfigurationInput, ...request.Option) (*fis.UpdateTargetAccountConfigurationOutput, error) + UpdateTargetAccountConfigurationRequest(*fis.UpdateTargetAccountConfigurationInput) (*request.Request, *fis.UpdateTargetAccountConfigurationOutput) } var _ FISAPI = (*fis.FIS)(nil) diff --git a/service/glue/api.go b/service/glue/api.go index 5d74718d01b..19edef19091 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -30238,8 +30238,20 @@ type ConnectorDataSource struct { // The connectionType, as provided to the underlying Glue library. This node // type supports the following connection types: // + // * opensearch + // + // * azuresql + // + // * azurecosmos + // // * bigquery // + // * saphana + // + // * teradata + // + // * vertica + // // ConnectionType is a required field ConnectionType *string `type:"string" required:"true"` @@ -30338,8 +30350,20 @@ type ConnectorDataTarget struct { // The connectionType, as provided to the underlying Glue library. This node // type supports the following connection types: // + // * opensearch + // + // * azuresql + // + // * azurecosmos + // // * bigquery // + // * saphana + // + // * teradata + // + // * vertica + // // ConnectionType is a required field ConnectionType *string `type:"string" required:"true"` @@ -77395,12 +77419,16 @@ func (s *XMLClassifier) SetVersion(v int64) *XMLClassifier { const ( // AdditionalOptionKeysPerformanceTuningCaching is a AdditionalOptionKeys enum value AdditionalOptionKeysPerformanceTuningCaching = "performanceTuning.caching" + + // AdditionalOptionKeysObservationsScope is a AdditionalOptionKeys enum value + AdditionalOptionKeysObservationsScope = "observations.scope" ) // AdditionalOptionKeys_Values returns all elements of the AdditionalOptionKeys enum func AdditionalOptionKeys_Values() []string { return []string{ AdditionalOptionKeysPerformanceTuningCaching, + AdditionalOptionKeysObservationsScope, } } diff --git a/service/rds/api.go b/service/rds/api.go index 46457c9403b..02b5469b1dc 100644 --- a/service/rds/api.go +++ b/service/rds/api.go @@ -2174,9 +2174,9 @@ func (c *RDS) CreateDBInstanceReadReplicaRequest(input *CreateDBInstanceReadRepl // // Creates a new DB instance that acts as a read replica for an existing source // DB instance or Multi-AZ DB cluster. You can create a read replica for a DB -// instance running MySQL, MariaDB, Oracle, PostgreSQL, or SQL Server. You can -// create a read replica for a Multi-AZ DB cluster running MySQL or PostgreSQL. -// For more information, see Working with read replicas (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) +// instance running Db2, MariaDB, MySQL, Oracle, PostgreSQL, or SQL Server. +// You can create a read replica for a Multi-AZ DB cluster running MySQL or +// PostgreSQL. For more information, see Working with read replicas (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) // and Migrating from a Multi-AZ DB cluster to a DB instance using a read replica // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/multi-az-db-clusters-concepts.html#multi-az-db-clusters-migrating-to-instance-with-read-replica) // in the Amazon RDS User Guide. @@ -9794,7 +9794,7 @@ func (c *RDS) DescribeOptionGroupOptionsRequest(input *DescribeOptionGroupOption // DescribeOptionGroupOptions API operation for Amazon Relational Database Service. // -// Describes all available options. +// Describes all available options for the specified engine. // // 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 @@ -10059,8 +10059,7 @@ func (c *RDS) DescribeOrderableDBInstanceOptionsRequest(input *DescribeOrderable // DescribeOrderableDBInstanceOptions API operation for Amazon Relational Database Service. // -// Returns a list of orderable DB instance options for the specified DB engine, -// DB engine version, and DB instance class. +// Describes the orderable DB instance options for a specified DB engine. // // 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 @@ -11662,7 +11661,7 @@ func (c *RDS) ModifyCurrentDBClusterCapacityRequest(input *ModifyCurrentDBCluste // for Aurora Serverless v1 (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.how-it-works.html#aurora-serverless.how-it-works.auto-scaling) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora Serverless v1 DB clusters. +// This operation only applies to Aurora Serverless v1 DB clusters. // // 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 @@ -11979,7 +11978,7 @@ func (c *RDS) ModifyDBClusterEndpointRequest(input *ModifyDBClusterEndpointInput // // Modifies the properties of an endpoint in an Amazon Aurora DB cluster. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // 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 @@ -12078,8 +12077,8 @@ func (c *RDS) ModifyDBClusterParameterGroupRequest(input *ModifyDBClusterParamet // After you create a DB cluster parameter group, you should wait at least 5 // minutes before creating your first DB cluster that uses that DB cluster parameter // group as the default parameter group. This allows Amazon RDS to fully complete -// the create action before the parameter group is used as the default for a -// new DB cluster. This is especially important for parameters that are critical +// the create operation before the parameter group is used as the default for +// a new DB cluster. This is especially important for parameters that are critical // when creating the default database for a DB cluster, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) @@ -12447,8 +12446,8 @@ func (c *RDS) ModifyDBParameterGroupRequest(input *ModifyDBParameterGroupInput) // After you modify a DB parameter group, you should wait at least 5 minutes // before creating your first DB instance that uses that DB parameter group // as the default parameter group. This allows Amazon RDS to fully complete -// the modify action before the parameter group is used as the default for a -// new DB instance. This is especially important for parameters that are critical +// the modify operation before the parameter group is used as the default for +// a new DB instance. This is especially important for parameters that are critical // when creating the default database for a DB instance, such as the character // set for the default database defined by the character_set_database parameter. // You can use the Parameter Groups option of the Amazon RDS console (https://console.aws.amazon.com/rds/) @@ -12806,7 +12805,7 @@ func (c *RDS) ModifyDBSnapshotRequest(input *ModifyDBSnapshotInput) (req *reques // be encrypted or unencrypted, but not shared or public. // // Amazon RDS supports upgrading DB snapshots for MySQL, PostgreSQL, and Oracle. -// This command doesn't apply to RDS Custom. +// This operation doesn't apply to RDS Custom or RDS for Db2. // // 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 @@ -14024,7 +14023,7 @@ func (c *RDS) RemoveFromGlobalClusterRequest(input *RemoveFromGlobalClusterInput // of being read-only and receiving data from a primary cluster in a different // Region. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // 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 @@ -14684,16 +14683,16 @@ func (c *RDS) RestoreDBClusterFromS3Request(input *RestoreDBClusterFromS3Input) // in Migrating Data from MySQL by Using an Amazon S3 Bucket (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Migrating.ExtMySQL.html#AuroraMySQL.Migrating.ExtMySQL.S3) // in the Amazon Aurora User Guide. // -// This action only restores the DB cluster, not the DB instances for that DB -// cluster. You must invoke the CreateDBInstance action to create DB instances +// This operation only restores the DB cluster, not the DB instances for that +// DB cluster. You must invoke the CreateDBInstance operation to create DB instances // for the restored DB cluster, specifying the identifier of the restored DB // cluster in DBClusterIdentifier. You can create DB instances only after the -// RestoreDBClusterFromS3 action has completed and the DB cluster is available. +// RestoreDBClusterFromS3 operation has completed and the DB cluster is available. // // For more information on Amazon Aurora, see What is Amazon Aurora? (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. The source DB engine must +// This operation only applies to Aurora DB clusters. The source DB engine must // be MySQL. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -14830,11 +14829,12 @@ func (c *RDS) RestoreDBClusterFromSnapshotRequest(input *RestoreDBClusterFromSna // configuration. If you don't specify a security group, the new DB cluster // is associated with the default security group. // -// This action only restores the DB cluster, not the DB instances for that DB -// cluster. You must invoke the CreateDBInstance action to create DB instances +// This operation only restores the DB cluster, not the DB instances for that +// DB cluster. You must invoke the CreateDBInstance operation to create DB instances // for the restored DB cluster, specifying the identifier of the restored DB // cluster in DBClusterIdentifier. You can create DB instances only after the -// RestoreDBClusterFromSnapshot action has completed and the DB cluster is available. +// RestoreDBClusterFromSnapshot operation has completed and the DB cluster is +// available. // // For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) @@ -14996,12 +14996,12 @@ func (c *RDS) RestoreDBClusterToPointInTimeRequest(input *RestoreDBClusterToPoin // same configuration as the original DB cluster, except that the new DB cluster // is created with the default DB security group. // -// For Aurora, this action only restores the DB cluster, not the DB instances -// for that DB cluster. You must invoke the CreateDBInstance action to create +// For Aurora, this operation only restores the DB cluster, not the DB instances +// for that DB cluster. You must invoke the CreateDBInstance operation to create // DB instances for the restored DB cluster, specifying the identifier of the // restored DB cluster in DBClusterIdentifier. You can create DB instances only -// after the RestoreDBClusterToPointInTime action has completed and the DB cluster -// is available. +// after the RestoreDBClusterToPointInTime operation has completed and the DB +// cluster is available. // // For more information on Amazon Aurora DB clusters, see What is Amazon Aurora? // (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_AuroraOverview.html) @@ -15159,12 +15159,12 @@ func (c *RDS) RestoreDBInstanceFromDBSnapshotRequest(input *RestoreDBInstanceFro // // If you want to replace your original DB instance with the new, restored DB // instance, then rename your original DB instance before you call the RestoreDBInstanceFromDBSnapshot -// action. RDS doesn't allow two DB instances with the same name. After you +// operation. RDS doesn't allow two DB instances with the same name. After you // have renamed your original DB instance with a different identifier, then // you can pass the original name of the DB instance as the DBInstanceIdentifier -// in the call to the RestoreDBInstanceFromDBSnapshot action. The result is -// that you replace the original DB instance with the DB instance created from -// the snapshot. +// in the call to the RestoreDBInstanceFromDBSnapshot operation. The result +// is that you replace the original DB instance with the DB instance created +// from the snapshot. // // If you are restoring from a shared manual DB snapshot, the DBSnapshotIdentifier // must be the ARN of the shared DB snapshot. @@ -15333,7 +15333,7 @@ func (c *RDS) RestoreDBInstanceFromS3Request(input *RestoreDBInstanceFromS3Input // (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.html) // in the Amazon RDS User Guide. // -// This command doesn't apply to RDS Custom. +// This operation doesn't apply to RDS Custom. // // 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 @@ -15487,7 +15487,7 @@ func (c *RDS) RestoreDBInstanceToPointInTimeRequest(input *RestoreDBInstanceToPo // with mirroring; in this case, the instance becomes a mirrored deployment // and not a single-AZ deployment. // -// This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, +// This operation doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora, // use RestoreDBClusterToPointInTime. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -15847,12 +15847,12 @@ func (c *RDS) StartDBClusterRequest(input *StartDBClusterInput) (req *request.Re // StartDBCluster API operation for Amazon Relational Database Service. // // Starts an Amazon Aurora DB cluster that was stopped using the Amazon Web -// Services console, the stop-db-cluster CLI command, or the StopDBCluster action. +// Services console, the stop-db-cluster CLI command, or the StopDBCluster operation. // // For more information, see Stopping and Starting an Aurora Cluster (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // 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 @@ -15938,7 +15938,7 @@ func (c *RDS) StartDBInstanceRequest(input *StartDBInstanceInput) (req *request. // StartDBInstance API operation for Amazon Relational Database Service. // // Starts an Amazon RDS DB instance that was stopped using the Amazon Web Services -// console, the stop-db-instance CLI command, or the StopDBInstance action. +// console, the stop-db-instance CLI command, or the StopDBInstance operation. // // For more information, see Starting an Amazon RDS DB instance That Was Previously // Stopped (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StartInstance.html) @@ -16165,7 +16165,7 @@ func (c *RDS) StartExportTaskRequest(input *StartExportTaskInput) (req *request. // Starts an export of DB snapshot or DB cluster data to Amazon S3. The provided // IAM role must have access to the S3 bucket. // -// You can't export snapshot data from RDS Custom DB instances. +// You can't export snapshot data from Db2 or RDS Custom DB instances. // // You can't export cluster data from Multi-AZ DB clusters. // @@ -16288,7 +16288,7 @@ func (c *RDS) StopActivityStreamRequest(input *StopActivityStreamInput) (req *re // // Stops a database activity stream that was started using the Amazon Web Services // console, the start-activity-stream CLI command, or the StartActivityStream -// action. +// operation. // // For more information, see Monitoring Amazon Aurora with Database Activity // Streams (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/DBActivityStreams.html) @@ -16393,7 +16393,7 @@ func (c *RDS) StopDBClusterRequest(input *StopDBClusterInput) (req *request.Requ // For more information, see Stopping and Starting an Aurora Cluster (https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-cluster-stop-start.html) // in the Amazon Aurora User Guide. // -// This action only applies to Aurora DB clusters. +// This operation only applies to Aurora DB clusters. // // 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 @@ -22360,6 +22360,15 @@ type CreateDBInstanceInput struct { // * Provisioned IOPS storage (io1): Must be an integer from 40 to 65536 // for RDS Custom for Oracle, 16384 for RDS Custom for SQL Server. // + // RDS for Db2 + // + // Constraints to the amount of storage for each storage type are the following: + // + // * General Purpose (SSD) storage (gp2, gp3): Must be an integer from 20 + // to 64000. + // + // * Provisioned IOPS storage (io1): Must be an integer from 100 to 64000. + // // RDS for MariaDB // // Constraints to the amount of storage for each storage type are the following: @@ -22472,7 +22481,7 @@ type CreateDBInstanceInput struct { // The location for storing automated backups and manual snapshots. // - // Valie Values: + // Valid Values: // // * outposts (Amazon Web Services Outposts) // @@ -22570,7 +22579,55 @@ type CreateDBInstanceInput struct { // The meaning of this parameter differs according to the database engine you // use. // - // MySQL + // Amazon Aurora MySQL + // + // The name of the database to create when the primary DB instance of the Aurora + // MySQL DB cluster is created. If this parameter isn't specified for an Aurora + // MySQL DB cluster, no database is created in the DB cluster. + // + // Constraints: + // + // * Must contain 1 to 64 alphanumeric characters. + // + // * Can't be a word reserved by the database engine. + // + // Amazon Aurora PostgreSQL + // + // The name of the database to create when the primary DB instance of the Aurora + // PostgreSQL DB cluster is created. If this parameter isn't specified for an + // Aurora PostgreSQL DB cluster, a database named postgres is created in the + // DB cluster. + // + // Constraints: + // + // * It must contain 1 to 63 alphanumeric characters. + // + // * Must begin with a letter. Subsequent characters can be letters, underscores, + // or digits (0 to 9). + // + // * Can't be a word reserved by the database engine. + // + // Amazon RDS Custom for Oracle + // + // The Oracle System ID (SID) of the created RDS Custom DB instance. If you + // don't specify a value, the default value is ORCL for non-CDBs and RDSCDB + // for CDBs. + // + // Default: ORCL + // + // Constraints: + // + // * Must contain 1 to 8 alphanumeric characters. + // + // * Must contain a letter. + // + // * Can't be a word reserved by the database engine. + // + // Amazon RDS Custom for SQL Server + // + // Not applicable. Must be null. + // + // RDS for Db2 // // The name of the database to create when the DB instance is created. If this // parameter isn't specified, no database is created in the DB instance. @@ -22582,9 +22639,9 @@ type CreateDBInstanceInput struct { // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // MariaDB + // RDS for MariaDB // // The name of the database to create when the DB instance is created. If this // parameter isn't specified, no database is created in the DB instance. @@ -22596,24 +22653,23 @@ type CreateDBInstanceInput struct { // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // PostgreSQL + // RDS for MySQL // // The name of the database to create when the DB instance is created. If this - // parameter isn't specified, a database named postgres is created in the DB - // instance. + // parameter isn't specified, no database is created in the DB instance. // // Constraints: // - // * Must contain 1 to 63 letters, numbers, or underscores. + // * Must contain 1 to 64 letters or numbers. // // * Must begin with a letter. Subsequent characters can be letters, underscores, // or digits (0-9). // - // * Can't be a word reserved by the specified database engine + // * Can't be a word reserved by the specified database engine. // - // Oracle + // RDS for Oracle // // The Oracle System ID (SID) of the created DB instance. If you don't specify // a value, the default value is ORCL. You can't specify the string null, or @@ -22623,59 +22679,26 @@ type CreateDBInstanceInput struct { // // Constraints: // - // * Can't be longer than 8 characters - // - // Amazon RDS Custom for Oracle + // * Can't be longer than 8 characters. // - // The Oracle System ID (SID) of the created RDS Custom DB instance. If you - // don't specify a value, the default value is ORCL for non-CDBs and RDSCDB - // for CDBs. + // RDS for PostgreSQL // - // Default: ORCL + // The name of the database to create when the DB instance is created. If this + // parameter isn't specified, a database named postgres is created in the DB + // instance. // // Constraints: // - // * It must contain 1 to 8 alphanumeric characters. - // - // * It must contain a letter. - // - // * It can't be a word reserved by the database engine. + // * Must contain 1 to 63 letters, numbers, or underscores. // - // Amazon RDS Custom for SQL Server + // * Must begin with a letter. Subsequent characters can be letters, underscores, + // or digits (0-9). // - // Not applicable. Must be null. + // * Can't be a word reserved by the specified database engine. // - // SQL Server + // RDS for SQL Server // // Not applicable. Must be null. - // - // Amazon Aurora MySQL - // - // The name of the database to create when the primary DB instance of the Aurora - // MySQL DB cluster is created. If this parameter isn't specified for an Aurora - // MySQL DB cluster, no database is created in the DB cluster. - // - // Constraints: - // - // * It must contain 1 to 64 alphanumeric characters. - // - // * It can't be a word reserved by the database engine. - // - // Amazon Aurora PostgreSQL - // - // The name of the database to create when the primary DB instance of the Aurora - // PostgreSQL DB cluster is created. If this parameter isn't specified for an - // Aurora PostgreSQL DB cluster, a database named postgres is created in the - // DB cluster. - // - // Constraints: - // - // * It must contain 1 to 63 alphanumeric characters. - // - // * It must begin with a letter. Subsequent characters can be letters, underscores, - // or digits (0 to 9). - // - // * It can't be a word reserved by the database engine. DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. If @@ -22732,8 +22755,8 @@ type CreateDBInstanceInput struct { DeletionProtection *bool `type:"boolean"` // The Active Directory directory ID to create the DB instance in. Currently, - // only Microsoft SQL Server, MySQL, Oracle, and PostgreSQL DB instances can - // be created in an Active Directory Domain. + // you can create only Db2, MySQL, Microsoft SQL Server, Oracle, and PostgreSQL + // DB instances in an Active Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -22792,9 +22815,8 @@ type CreateDBInstanceInput struct { // Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain DomainOu *string `type:"string"` - // The list of log types that need to be enabled for exporting to CloudWatch - // Logs. For more information, see Publishing Database Logs to Amazon CloudWatch - // Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) + // The list of log types to enable for exporting to CloudWatch Logs. For more + // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) // in the Amazon RDS User Guide. // // This setting doesn't apply to the following DB instances: @@ -22805,6 +22827,8 @@ type CreateDBInstanceInput struct { // // The following values are valid for each DB engine: // + // * RDS for Db2 - diag.log | notify.log + // // * RDS for MariaDB - audit | error | general | slowquery // // * RDS for Microsoft SQL Server - agent | error @@ -22875,6 +22899,10 @@ type CreateDBInstanceInput struct { // // * custom-sqlserver-web (for RDS Custom for SQL Server DB instances) // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -22924,6 +22952,11 @@ type CreateDBInstanceInput struct { // See RDS Custom for SQL Server general requirements (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/custom-reqs-limits-MS.html) // in the Amazon RDS User Guide. // + // RDS for Db2 + // + // For information, see Db2 on Amazon RDS versions (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Db2.html#Db2.Concepts.VersionMgmt) + // in the Amazon RDS User Guide. + // // RDS for MariaDB // // For information, see MariaDB on Amazon RDS versions (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_MariaDB.html#MariaDB.Concepts.VersionMgmt) @@ -22960,8 +22993,8 @@ type CreateDBInstanceInput struct { // // Constraints: // - // * For RDS for MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple - // between .5 and 50 of the storage amount for the DB instance. + // * For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a + // multiple between .5 and 50 of the storage amount for the DB instance. // // * For RDS for SQL Server - Must be a multiple between 1 and 50 of the // storage amount for the DB instance. @@ -22994,6 +23027,8 @@ type CreateDBInstanceInput struct { // // Valid Values: // + // * RDS for Db2 - bring-your-own-license + // // * RDS for MariaDB - general-public-license // // * RDS for Microsoft SQL Server - license-included @@ -23033,6 +23068,8 @@ type CreateDBInstanceInput struct { // // Length Constraints: // + // * RDS for Db2 - Must contain from 8 to 255 characters. + // // * RDS for MariaDB - Must contain from 8 to 41 characters. // // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. @@ -23215,6 +23252,8 @@ type CreateDBInstanceInput struct { // // Default: // + // * RDS for Db2 - 50000 + // // * RDS for MariaDB - 3306 // // * RDS for Microsoft SQL Server - 1433 @@ -24305,7 +24344,7 @@ type CreateDBInstanceReadReplicaInput struct { // // Constraints: // - // * Must be the identifier of an existing MySQL, MariaDB, Oracle, PostgreSQL, + // * Must be the identifier of an existing Db2, MariaDB, MySQL, Oracle, PostgreSQL, // or SQL Server DB instance. // // * Can't be specified if the SourceDBClusterIdentifier parameter is also @@ -24745,7 +24784,9 @@ type CreateDBParameterGroupInput struct { // // * aurora-postgresql // - // * mariadb + // * db2-ae + // + // * db2-se // // * mysql // @@ -26173,11 +26214,14 @@ func (s *CreateIntegrationOutput) SetTargetArn(v string) *CreateIntegrationOutpu type CreateOptionGroupInput struct { _ struct{} `type:"structure"` - // Specifies the name of the engine that this option group should be associated - // with. + // The name of the engine to associate this option group with. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -30404,7 +30448,7 @@ func (s *DBParameterGroup) SetDescription(v string) *DBParameterGroup { } // Contains the result of a successful invocation of the ModifyDBParameterGroup -// or ResetDBParameterGroup action. +// or ResetDBParameterGroup operation. type DBParameterGroupNameMessage struct { _ struct{} `type:"structure"` @@ -35934,6 +35978,10 @@ type DescribeDBEngineVersionsInput struct { // // * custom-oracle-ee // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -38498,6 +38546,10 @@ type DescribeEngineDefaultParametersInput struct { // // * custom-oracle-ee-19 // + // * db2-ae + // + // * db2-se + // // * mariadb10.2 // // * mariadb10.3 @@ -39565,10 +39617,14 @@ func (s *DescribeIntegrationsOutput) SetMarker(v string) *DescribeIntegrationsOu type DescribeOptionGroupOptionsInput struct { _ struct{} `type:"structure"` - // A required parameter. Options available for the given engine name are described. + // The name of the engine to describe options for. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -39732,11 +39788,14 @@ func (s *DescribeOptionGroupOptionsOutput) SetOptionGroupOptions(v []*OptionGrou type DescribeOptionGroupsInput struct { _ struct{} `type:"structure"` - // Filters the list of option groups to only include groups associated with - // a specific database engine. + // A filter to only include option groups associated with this database engine. // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -39908,19 +39967,19 @@ type DescribeOrderableDBInstanceOptionsInput struct { _ struct{} `type:"structure"` // The Availability Zone group associated with a Local Zone. Specify this parameter - // to retrieve available offerings for the Local Zones in the group. + // to retrieve available options for the Local Zones in the group. // - // Omit this parameter to show the available offerings in the specified Amazon + // Omit this parameter to show the available options in the specified Amazon // Web Services Region. // - // This setting doesn't apply to RDS Custom. + // This setting doesn't apply to RDS Custom DB instances. AvailabilityZoneGroup *string `type:"string"` - // The DB instance class filter value. Specify this parameter to show only the - // available offerings matching the specified DB instance class. + // A filter to include only the available options for the specified DB instance + // class. DBInstanceClass *string `type:"string"` - // The name of the engine to retrieve DB instance options for. + // The name of the engine to describe DB instance options for. // // Valid Values: // @@ -39930,6 +39989,10 @@ type DescribeOrderableDBInstanceOptionsInput struct { // // * custom-oracle-ee // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -39955,15 +40018,14 @@ type DescribeOrderableDBInstanceOptionsInput struct { // Engine is a required field Engine *string `type:"string" required:"true"` - // The engine version filter value. Specify this parameter to show only the - // available offerings matching the specified engine version. + // A filter to include only the available options for the specified engine version. EngineVersion *string `type:"string"` // This parameter isn't currently supported. Filters []*Filter `locationNameList:"Filter" type:"list"` - // The license model filter value. Specify this parameter to show only the available - // offerings matching the specified license model. + // A filter to include only the available options for the specified license + // model. // // RDS Custom supports only the BYOL licensing model. LicenseModel *string `type:"string"` @@ -45146,7 +45208,7 @@ type ModifyDBInstanceInput struct { // The new amount of storage in gibibytes (GiB) to allocate for the DB instance. // - // For RDS for MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, + // For RDS for Db2, MariaDB, RDS for MySQL, RDS for Oracle, and RDS for PostgreSQL, // the value supplied must be at least 10% greater than the current value. Values // that are not at least 10% greater than the existing value are rounded up // so that they are 10% greater than the current value. @@ -45357,6 +45419,8 @@ type ModifyDBInstanceInput struct { // // * Amazon Aurora - 3306 // + // * RDS for Db2 - 50000 + // // * RDS for MariaDB - 3306 // // * RDS for Microsoft SQL Server - 1433 @@ -45416,8 +45480,8 @@ type ModifyDBInstanceInput struct { // The Active Directory directory ID to move the DB instance to. Specify none // to remove the instance from its current domain. You must create the domain - // before this operation. Currently, you can create only MySQL, Microsoft SQL - // Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. + // before this operation. Currently, you can create only Db2, MySQL, Microsoft + // SQL Server, Oracle, and PostgreSQL DB instances in an Active Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -45599,6 +45663,8 @@ type ModifyDBInstanceInput struct { // // Valid Values: // + // * RDS for Db2 - bring-your-own-license + // // * RDS for MariaDB - general-public-license // // * RDS for Microsoft SQL Server - license-included @@ -45640,7 +45706,7 @@ type ModifyDBInstanceInput struct { // of the request, the MasterUserPassword element exists in the PendingModifiedValues // element of the operation response. // - // Amazon RDS API operations never return the password, so this action provides + // Amazon RDS API operations never return the password, so this operation provides // a way to regain access to a primary instance user if the password is lost. // This includes restoring privileges that might have been accidentally revoked. // @@ -45657,10 +45723,14 @@ type ModifyDBInstanceInput struct { // // * Can't be specified if ManageMasterUserPassword is turned on. // - // * Can include any printable ASCII character except "/", """, or "@". + // * Can include any printable ASCII character except "/", """, or "@". For + // RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) + // character. // // Length Constraints: // + // * RDS for Db2 - Must contain from 8 to 255 characters. + // // * RDS for MariaDB - Must contain from 8 to 41 characters. // // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. @@ -53319,26 +53389,26 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // Default: The same DBInstanceClass as the original DB instance. DBInstanceClass *string `type:"string"` - // Name of the DB instance to create from the DB snapshot. This parameter isn't - // case-sensitive. + // The name of the DB instance to create from the DB snapshot. This parameter + // isn't case-sensitive. // // Constraints: // - // * Must contain from 1 to 63 numbers, letters, or hyphens + // * Must contain from 1 to 63 numbers, letters, or hyphens. // - // * First character must be a letter + // * First character must be a letter. // - // * Can't end with a hyphen or contain two consecutive hyphens + // * Can't end with a hyphen or contain two consecutive hyphens. // // Example: my-snapshot-id // // DBInstanceIdentifier is a required field DBInstanceIdentifier *string `type:"string" required:"true"` - // The database name for the restored DB instance. + // The name of the database for the restored DB instance. // - // This parameter doesn't apply to the MySQL, PostgreSQL, or MariaDB engines. - // It also doesn't apply to RDS Custom DB instances. + // This parameter only applies to RDS for Oracle and RDS for SQL Server DB instances. + // It doesn't apply to the other engines or to RDS Custom DB instances. DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. @@ -53350,7 +53420,7 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // // Constraints: // - // * If supplied, must match the name of an existing DBParameterGroup. + // * If supplied, must match the name of an existing DB parameter group. // // * Must be 1 to 255 letters, numbers, or hyphens. // @@ -53363,7 +53433,7 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // // Constraints: // - // * Must match the identifier of an existing DBSnapshot. + // * Must match the identifier of an existing DB snapshot. // // * Can't be specified when DBClusterSnapshotIdentifier is specified. // @@ -53373,9 +53443,11 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // must be the ARN of the shared DB snapshot. DBSnapshotIdentifier *string `type:"string"` - // The DB subnet group name to use for the new instance. + // The name of the DB subnet group to use for the new instance. // - // Constraints: If supplied, must match the name of an existing DBSubnetGroup. + // Constraints: + // + // * If supplied, must match the name of an existing DB subnet group. // // Example: mydbsubnetgroup DBSubnetGroupName *string `type:"string"` @@ -53389,10 +53461,10 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // Instance (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html). DeletionProtection *bool `type:"boolean"` - // Specify the Active Directory directory ID to restore the DB instance in. - // The domain/ must be created prior to this operation. Currently, you can create - // only MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in - // an Active Directory Domain. + // The Active Directory directory ID to restore the DB instance in. The domain/ + // must be created prior to this operation. Currently, you can create only Db2, + // MySQL, Microsoft SQL Server, Oracle, and PostgreSQL DB instances in an Active + // Directory Domain. // // For more information, see Kerberos Authentication (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/kerberos-authentication.html) // in the Amazon RDS User Guide. @@ -53447,9 +53519,9 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // Example: OU=mymanagedADtestOU,DC=mymanagedADtest,DC=mymanagedAD,DC=mydomain DomainOu *string `type:"string"` - // The list of logs that the restored DB instance is to export to CloudWatch - // Logs. The values in the list depend on the DB engine being used. For more - // information, see Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) + // The list of logs for the restored DB instance to export to CloudWatch Logs. + // The values in the list depend on the DB engine. For more information, see + // Publishing Database Logs to Amazon CloudWatch Logs (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html#USER_LogAccess.Procedural.UploadtoCloudWatch) // in the Amazon RDS User Guide. // // This setting doesn't apply to RDS Custom. @@ -53494,6 +53566,10 @@ type RestoreDBInstanceFromDBSnapshotInput struct { // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql @@ -54114,30 +54190,29 @@ type RestoreDBInstanceFromS3Input struct { // Manager if MasterUserPassword is specified. ManageMasterUserPassword *bool `type:"boolean"` - // The password for the master user. The password can include any printable - // ASCII character except "/", """, or "@". - // - // Constraints: Can't be specified if ManageMasterUserPassword is turned on. + // The password for the master user. // - // MariaDB + // Constraints: // - // Constraints: Must contain from 8 to 41 characters. + // * Can't be specified if ManageMasterUserPassword is turned on. // - // Microsoft SQL Server + // * Can include any printable ASCII character except "/", """, or "@". For + // RDS for Oracle, can't include the "&" (ampersand) or the "'" (single quotes) + // character. // - // Constraints: Must contain from 8 to 128 characters. + // Length Constraints: // - // MySQL + // * RDS for Db2 - Must contain from 8 to 128 characters. // - // Constraints: Must contain from 8 to 41 characters. + // * RDS for MariaDB - Must contain from 8 to 41 characters. // - // Oracle + // * RDS for Microsoft SQL Server - Must contain from 8 to 128 characters. // - // Constraints: Must contain from 8 to 30 characters. + // * RDS for MySQL - Must contain from 8 to 41 characters. // - // PostgreSQL + // * RDS for Oracle - Must contain from 8 to 30 characters. // - // Constraints: Must contain from 8 to 128 characters. + // * RDS for PostgreSQL - Must contain from 8 to 128 characters. MasterUserPassword *string `type:"string"` // The Amazon Web Services KMS key identifier to encrypt a secret that is automatically @@ -54791,11 +54866,16 @@ type RestoreDBInstanceToPointInTimeInput struct { // Example: us-east-1a AvailabilityZone *string `type:"string"` - // Specifies where automated backups and manual snapshots are stored for the - // restored DB instance. + // The location for storing automated backups and manual snapshots for the restored + // DB instance. // - // Possible values are outposts (Amazon Web Services Outposts) and region (Amazon - // Web Services Region). The default is region. + // Valid Values: + // + // * outposts (Amazon Web Services Outposts) + // + // * region (Amazon Web Services Region) + // + // Default: region // // For more information, see Working with Amazon RDS on Amazon Web Services // Outposts (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) @@ -54835,8 +54915,15 @@ type RestoreDBInstanceToPointInTimeInput struct { // The database name for the restored DB instance. // - // This parameter isn't supported for the MySQL or MariaDB engines. It also - // doesn't apply to RDS Custom. + // This parameter doesn't apply to the following DB instances: + // + // * RDS Custom + // + // * RDS for Db2 + // + // * RDS for MariaDB + // + // * RDS for MySQL DBName *string `type:"string"` // The name of the DB parameter group to associate with this DB instance. @@ -54976,6 +55063,10 @@ type RestoreDBInstanceToPointInTimeInput struct { // // Valid Values: // + // * db2-ae + // + // * db2-se + // // * mariadb // // * mysql diff --git a/service/rds/doc.go b/service/rds/doc.go index 8b1fe721dab..917fb68d35c 100644 --- a/service/rds/doc.go +++ b/service/rds/doc.go @@ -10,12 +10,12 @@ // up developers to focus on what makes their applications and businesses unique. // // Amazon RDS gives you access to the capabilities of a MySQL, MariaDB, PostgreSQL, -// Microsoft SQL Server, Oracle, or Amazon Aurora database server. These capabilities -// mean that the code, applications, and tools you already use today with your -// existing databases work with Amazon RDS without modification. Amazon RDS -// automatically backs up your database and maintains the database software -// that powers your DB instance. Amazon RDS is flexible: you can scale your -// DB instance's compute resources and storage capacity to meet your application's +// Microsoft SQL Server, Oracle, Db2, or Amazon Aurora database server. These +// capabilities mean that the code, applications, and tools you already use +// today with your existing databases work with Amazon RDS without modification. +// Amazon RDS automatically backs up your database and maintains the database +// software that powers your DB instance. Amazon RDS is flexible: you can scale +// your DB instance's compute resources and storage capacity to meet your application's // demand. As with all Amazon Web Services, there are no up-front investments, // and you pay only for the resources you use. // diff --git a/service/securityhub/api.go b/service/securityhub/api.go index be530145871..01178187326 100644 --- a/service/securityhub/api.go +++ b/service/securityhub/api.go @@ -401,6 +401,9 @@ func (c *SecurityHub) BatchDisableStandardsRequest(input *BatchDisableStandardsI // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchDisableStandards func (c *SecurityHub) BatchDisableStandards(input *BatchDisableStandardsInput) (*BatchDisableStandardsOutput, error) { req, out := c.BatchDisableStandardsRequest(input) @@ -496,6 +499,9 @@ func (c *SecurityHub) BatchEnableStandardsRequest(input *BatchEnableStandardsInp // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchEnableStandards func (c *SecurityHub) BatchEnableStandards(input *BatchEnableStandardsInput) (*BatchEnableStandardsOutput, error) { req, out := c.BatchEnableStandardsRequest(input) @@ -616,6 +622,106 @@ func (c *SecurityHub) BatchGetAutomationRulesWithContext(ctx aws.Context, input return out, req.Send() } +const opBatchGetConfigurationPolicyAssociations = "BatchGetConfigurationPolicyAssociations" + +// BatchGetConfigurationPolicyAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the BatchGetConfigurationPolicyAssociations 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 BatchGetConfigurationPolicyAssociations for more information on using the BatchGetConfigurationPolicyAssociations +// 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 BatchGetConfigurationPolicyAssociationsRequest method. +// req, resp := client.BatchGetConfigurationPolicyAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchGetConfigurationPolicyAssociations +func (c *SecurityHub) BatchGetConfigurationPolicyAssociationsRequest(input *BatchGetConfigurationPolicyAssociationsInput) (req *request.Request, output *BatchGetConfigurationPolicyAssociationsOutput) { + op := &request.Operation{ + Name: opBatchGetConfigurationPolicyAssociations, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/batchget", + } + + if input == nil { + input = &BatchGetConfigurationPolicyAssociationsInput{} + } + + output = &BatchGetConfigurationPolicyAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// BatchGetConfigurationPolicyAssociations API operation for AWS SecurityHub. +// +// Returns associations between an Security Hub configuration and a batch of +// target accounts, organizational units, or the root. Only the Security Hub +// delegated administrator can invoke this operation from the home Region. A +// configuration can refer to a configuration policy or to a self-managed configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation BatchGetConfigurationPolicyAssociations for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchGetConfigurationPolicyAssociations +func (c *SecurityHub) BatchGetConfigurationPolicyAssociations(input *BatchGetConfigurationPolicyAssociationsInput) (*BatchGetConfigurationPolicyAssociationsOutput, error) { + req, out := c.BatchGetConfigurationPolicyAssociationsRequest(input) + return out, req.Send() +} + +// BatchGetConfigurationPolicyAssociationsWithContext is the same as BatchGetConfigurationPolicyAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See BatchGetConfigurationPolicyAssociations 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 *SecurityHub) BatchGetConfigurationPolicyAssociationsWithContext(ctx aws.Context, input *BatchGetConfigurationPolicyAssociationsInput, opts ...request.Option) (*BatchGetConfigurationPolicyAssociationsOutput, error) { + req, out := c.BatchGetConfigurationPolicyAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opBatchGetSecurityControls = "BatchGetSecurityControls" // BatchGetSecurityControlsRequest generates a "aws/request.Request" representing the @@ -1227,6 +1333,9 @@ func (c *SecurityHub) BatchUpdateStandardsControlAssociationsRequest(input *Batc // The request was rejected because you supplied an invalid or out-of-range // value for an input parameter. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/BatchUpdateStandardsControlAssociations func (c *SecurityHub) BatchUpdateStandardsControlAssociations(input *BatchUpdateStandardsControlAssociationsInput) (*BatchUpdateStandardsControlAssociationsOutput, error) { req, out := c.BatchUpdateStandardsControlAssociationsRequest(input) @@ -1440,168 +1549,165 @@ func (c *SecurityHub) CreateAutomationRuleWithContext(ctx aws.Context, input *Cr return out, req.Send() } -const opCreateFindingAggregator = "CreateFindingAggregator" +const opCreateConfigurationPolicy = "CreateConfigurationPolicy" -// CreateFindingAggregatorRequest generates a "aws/request.Request" representing the -// client's request for the CreateFindingAggregator operation. The "output" return +// CreateConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the CreateConfigurationPolicy 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 CreateFindingAggregator for more information on using the CreateFindingAggregator +// See CreateConfigurationPolicy for more information on using the CreateConfigurationPolicy // 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 CreateFindingAggregatorRequest method. -// req, resp := client.CreateFindingAggregatorRequest(params) +// // Example sending a request using the CreateConfigurationPolicyRequest method. +// req, resp := client.CreateConfigurationPolicyRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator -func (c *SecurityHub) CreateFindingAggregatorRequest(input *CreateFindingAggregatorInput) (req *request.Request, output *CreateFindingAggregatorOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateConfigurationPolicy +func (c *SecurityHub) CreateConfigurationPolicyRequest(input *CreateConfigurationPolicyInput) (req *request.Request, output *CreateConfigurationPolicyOutput) { op := &request.Operation{ - Name: opCreateFindingAggregator, + Name: opCreateConfigurationPolicy, HTTPMethod: "POST", - HTTPPath: "/findingAggregator/create", + HTTPPath: "/configurationPolicy/create", } if input == nil { - input = &CreateFindingAggregatorInput{} + input = &CreateConfigurationPolicyInput{} } - output = &CreateFindingAggregatorOutput{} + output = &CreateConfigurationPolicyOutput{} req = c.newRequest(op, input, output) return } -// CreateFindingAggregator API operation for AWS SecurityHub. +// CreateConfigurationPolicy API operation for AWS SecurityHub. // -// Used to enable finding aggregation. Must be called from the aggregation Region. -// -// For more details about cross-Region replication, see Configuring finding -// aggregation (https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) -// in the Security Hub User Guide. +// Creates a configuration policy with the defined configuration. Only the Security +// Hub delegated administrator can invoke this operation from the home Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS SecurityHub's -// API operation CreateFindingAggregator for usage and error information. +// API operation CreateConfigurationPolicy for usage and error information. // // Returned Error Types: // // - InternalException // Internal server error. // +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// // - LimitExceededException // The request was rejected because it attempted to create resources beyond // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // -// - InvalidAccessException -// The account doesn't have permission to perform this action. -// // - AccessDeniedException // You don't have permission to perform the action specified in the request. // -// - InvalidInputException -// The request was rejected because you supplied an invalid or out-of-range -// value for an input parameter. +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator -func (c *SecurityHub) CreateFindingAggregator(input *CreateFindingAggregatorInput) (*CreateFindingAggregatorOutput, error) { - req, out := c.CreateFindingAggregatorRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateConfigurationPolicy +func (c *SecurityHub) CreateConfigurationPolicy(input *CreateConfigurationPolicyInput) (*CreateConfigurationPolicyOutput, error) { + req, out := c.CreateConfigurationPolicyRequest(input) return out, req.Send() } -// CreateFindingAggregatorWithContext is the same as CreateFindingAggregator with the addition of +// CreateConfigurationPolicyWithContext is the same as CreateConfigurationPolicy with the addition of // the ability to pass a context and additional request options. // -// See CreateFindingAggregator for details on how to use this API operation. +// See CreateConfigurationPolicy 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 *SecurityHub) CreateFindingAggregatorWithContext(ctx aws.Context, input *CreateFindingAggregatorInput, opts ...request.Option) (*CreateFindingAggregatorOutput, error) { - req, out := c.CreateFindingAggregatorRequest(input) +func (c *SecurityHub) CreateConfigurationPolicyWithContext(ctx aws.Context, input *CreateConfigurationPolicyInput, opts ...request.Option) (*CreateConfigurationPolicyOutput, error) { + req, out := c.CreateConfigurationPolicyRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opCreateInsight = "CreateInsight" +const opCreateFindingAggregator = "CreateFindingAggregator" -// CreateInsightRequest generates a "aws/request.Request" representing the -// client's request for the CreateInsight operation. The "output" return +// CreateFindingAggregatorRequest generates a "aws/request.Request" representing the +// client's request for the CreateFindingAggregator 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 CreateInsight for more information on using the CreateInsight +// See CreateFindingAggregator for more information on using the CreateFindingAggregator // 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 CreateInsightRequest method. -// req, resp := client.CreateInsightRequest(params) +// // Example sending a request using the CreateFindingAggregatorRequest method. +// req, resp := client.CreateFindingAggregatorRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateInsight -func (c *SecurityHub) CreateInsightRequest(input *CreateInsightInput) (req *request.Request, output *CreateInsightOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator +func (c *SecurityHub) CreateFindingAggregatorRequest(input *CreateFindingAggregatorInput) (req *request.Request, output *CreateFindingAggregatorOutput) { op := &request.Operation{ - Name: opCreateInsight, + Name: opCreateFindingAggregator, HTTPMethod: "POST", - HTTPPath: "/insights", + HTTPPath: "/findingAggregator/create", } if input == nil { - input = &CreateInsightInput{} + input = &CreateFindingAggregatorInput{} } - output = &CreateInsightOutput{} + output = &CreateFindingAggregatorOutput{} req = c.newRequest(op, input, output) return } -// CreateInsight API operation for AWS SecurityHub. +// CreateFindingAggregator API operation for AWS SecurityHub. // -// Creates a custom insight in Security Hub. An insight is a consolidation of -// findings that relate to a security issue that requires attention or remediation. +// Used to enable finding aggregation. Must be called from the aggregation Region. // -// To group the related findings in the insight, use the GroupByAttribute. +// For more details about cross-Region replication, see Configuring finding +// aggregation (https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) +// in the Security Hub User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS SecurityHub's -// API operation CreateInsight for usage and error information. +// API operation CreateFindingAggregator for usage and error information. // // Returned Error Types: // // - InternalException // Internal server error. // -// - InvalidInputException -// The request was rejected because you supplied an invalid or out-of-range -// value for an input parameter. -// // - LimitExceededException // The request was rejected because it attempted to create resources beyond // the current Amazon Web Services account or throttling limits. The error code @@ -1610,122 +1716,89 @@ func (c *SecurityHub) CreateInsightRequest(input *CreateInsightInput) (req *requ // - InvalidAccessException // The account doesn't have permission to perform this action. // -// - ResourceConflictException -// The resource specified in the request conflicts with an existing resource. +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateInsight -func (c *SecurityHub) CreateInsight(input *CreateInsightInput) (*CreateInsightOutput, error) { - req, out := c.CreateInsightRequest(input) +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateFindingAggregator +func (c *SecurityHub) CreateFindingAggregator(input *CreateFindingAggregatorInput) (*CreateFindingAggregatorOutput, error) { + req, out := c.CreateFindingAggregatorRequest(input) return out, req.Send() } -// CreateInsightWithContext is the same as CreateInsight with the addition of +// CreateFindingAggregatorWithContext is the same as CreateFindingAggregator with the addition of // the ability to pass a context and additional request options. // -// See CreateInsight for details on how to use this API operation. +// See CreateFindingAggregator 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 *SecurityHub) CreateInsightWithContext(ctx aws.Context, input *CreateInsightInput, opts ...request.Option) (*CreateInsightOutput, error) { - req, out := c.CreateInsightRequest(input) +func (c *SecurityHub) CreateFindingAggregatorWithContext(ctx aws.Context, input *CreateFindingAggregatorInput, opts ...request.Option) (*CreateFindingAggregatorOutput, error) { + req, out := c.CreateFindingAggregatorRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opCreateMembers = "CreateMembers" +const opCreateInsight = "CreateInsight" -// CreateMembersRequest generates a "aws/request.Request" representing the -// client's request for the CreateMembers operation. The "output" return +// CreateInsightRequest generates a "aws/request.Request" representing the +// client's request for the CreateInsight 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 CreateMembers for more information on using the CreateMembers +// See CreateInsight for more information on using the CreateInsight // 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 CreateMembersRequest method. -// req, resp := client.CreateMembersRequest(params) +// // Example sending a request using the CreateInsightRequest method. +// req, resp := client.CreateInsightRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateMembers -func (c *SecurityHub) CreateMembersRequest(input *CreateMembersInput) (req *request.Request, output *CreateMembersOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateInsight +func (c *SecurityHub) CreateInsightRequest(input *CreateInsightInput) (req *request.Request, output *CreateInsightOutput) { op := &request.Operation{ - Name: opCreateMembers, + Name: opCreateInsight, HTTPMethod: "POST", - HTTPPath: "/members", + HTTPPath: "/insights", } if input == nil { - input = &CreateMembersInput{} + input = &CreateInsightInput{} } - output = &CreateMembersOutput{} + output = &CreateInsightOutput{} req = c.newRequest(op, input, output) return } -// CreateMembers API operation for AWS SecurityHub. -// -// Creates a member association in Security Hub between the specified accounts -// and the account used to make the request, which is the administrator account. -// If you are integrated with Organizations, then the administrator account -// is designated by the organization management account. -// -// CreateMembers is always used to add accounts that are not organization members. -// -// For accounts that are managed using Organizations, CreateMembers is only -// used in the following cases: -// -// - Security Hub is not configured to automatically add new organization -// accounts. -// -// - The account was disassociated or deleted in Security Hub. -// -// This action can only be used by an account that has Security Hub enabled. -// To enable Security Hub, you can use the EnableSecurityHub operation. -// -// For accounts that are not organization members, you create the account association -// and then send an invitation to the member account. To send the invitation, -// you use the InviteMembers operation. If the account owner accepts the invitation, -// the account becomes a member account in Security Hub. -// -// Accounts that are managed using Organizations do not receive an invitation. -// They automatically become a member account in Security Hub. -// -// - If the organization account does not have Security Hub enabled, then -// Security Hub and the default standards are automatically enabled. Note -// that Security Hub cannot be enabled automatically for the organization -// management account. The organization management account must enable Security -// Hub before the administrator account enables it as a member account. -// -// - For organization accounts that already have Security Hub enabled, Security -// Hub does not make any other changes to those accounts. It does not change -// their enabled standards or controls. +// CreateInsight API operation for AWS SecurityHub. // -// A permissions policy is added that permits the administrator account to view -// the findings generated in the member account. +// Creates a custom insight in Security Hub. An insight is a consolidation of +// findings that relate to a security issue that requires attention or remediation. // -// To remove the association between the administrator and member accounts, -// use the DisassociateFromMasterAccount or DisassociateMembers operation. +// To group the related findings in the insight, use the GroupByAttribute. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS SecurityHub's -// API operation CreateMembers for usage and error information. +// API operation CreateInsight for usage and error information. // // Returned Error Types: // @@ -1747,6 +1820,143 @@ func (c *SecurityHub) CreateMembersRequest(input *CreateMembersInput) (req *requ // - ResourceConflictException // The resource specified in the request conflicts with an existing resource. // +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateInsight +func (c *SecurityHub) CreateInsight(input *CreateInsightInput) (*CreateInsightOutput, error) { + req, out := c.CreateInsightRequest(input) + return out, req.Send() +} + +// CreateInsightWithContext is the same as CreateInsight with the addition of +// the ability to pass a context and additional request options. +// +// See CreateInsight 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 *SecurityHub) CreateInsightWithContext(ctx aws.Context, input *CreateInsightInput, opts ...request.Option) (*CreateInsightOutput, error) { + req, out := c.CreateInsightRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateMembers = "CreateMembers" + +// CreateMembersRequest generates a "aws/request.Request" representing the +// client's request for the CreateMembers 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 CreateMembers for more information on using the CreateMembers +// 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 CreateMembersRequest method. +// req, resp := client.CreateMembersRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateMembers +func (c *SecurityHub) CreateMembersRequest(input *CreateMembersInput) (req *request.Request, output *CreateMembersOutput) { + op := &request.Operation{ + Name: opCreateMembers, + HTTPMethod: "POST", + HTTPPath: "/members", + } + + if input == nil { + input = &CreateMembersInput{} + } + + output = &CreateMembersOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateMembers API operation for AWS SecurityHub. +// +// Creates a member association in Security Hub between the specified accounts +// and the account used to make the request, which is the administrator account. +// If you are integrated with Organizations, then the administrator account +// is designated by the organization management account. +// +// CreateMembers is always used to add accounts that are not organization members. +// +// For accounts that are managed using Organizations, CreateMembers is only +// used in the following cases: +// +// - Security Hub is not configured to automatically add new organization +// accounts. +// +// - The account was disassociated or deleted in Security Hub. +// +// This action can only be used by an account that has Security Hub enabled. +// To enable Security Hub, you can use the EnableSecurityHub operation. +// +// For accounts that are not organization members, you create the account association +// and then send an invitation to the member account. To send the invitation, +// you use the InviteMembers operation. If the account owner accepts the invitation, +// the account becomes a member account in Security Hub. +// +// Accounts that are managed using Organizations do not receive an invitation. +// They automatically become a member account in Security Hub. +// +// - If the organization account does not have Security Hub enabled, then +// Security Hub and the default standards are automatically enabled. Note +// that Security Hub cannot be enabled automatically for the organization +// management account. The organization management account must enable Security +// Hub before the administrator account enables it as a member account. +// +// - For organization accounts that already have Security Hub enabled, Security +// Hub does not make any other changes to those accounts. It does not change +// their enabled standards or controls. +// +// A permissions policy is added that permits the administrator account to view +// the findings generated in the member account. +// +// To remove the association between the administrator and member accounts, +// use the DisassociateFromMasterAccount or DisassociateMembers operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation CreateMembers for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/CreateMembers func (c *SecurityHub) CreateMembers(input *CreateMembersInput) (*CreateMembersOutput, error) { req, out := c.CreateMembersRequest(input) @@ -1956,6 +2166,111 @@ func (c *SecurityHub) DeleteActionTargetWithContext(ctx aws.Context, input *Dele return out, req.Send() } +const opDeleteConfigurationPolicy = "DeleteConfigurationPolicy" + +// DeleteConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteConfigurationPolicy 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 DeleteConfigurationPolicy for more information on using the DeleteConfigurationPolicy +// 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 DeleteConfigurationPolicyRequest method. +// req, resp := client.DeleteConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteConfigurationPolicy +func (c *SecurityHub) DeleteConfigurationPolicyRequest(input *DeleteConfigurationPolicyInput) (req *request.Request, output *DeleteConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opDeleteConfigurationPolicy, + HTTPMethod: "DELETE", + HTTPPath: "/configurationPolicy/{Identifier}", + } + + if input == nil { + input = &DeleteConfigurationPolicyInput{} + } + + output = &DeleteConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteConfigurationPolicy API operation for AWS SecurityHub. +// +// Deletes a configuration policy. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. For the deletion to succeed, +// you must first disassociate a configuration policy from target accounts, +// organizational units, or the root by invoking the StartConfigurationPolicyDisassociation +// operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation DeleteConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DeleteConfigurationPolicy +func (c *SecurityHub) DeleteConfigurationPolicy(input *DeleteConfigurationPolicyInput) (*DeleteConfigurationPolicyOutput, error) { + req, out := c.DeleteConfigurationPolicyRequest(input) + return out, req.Send() +} + +// DeleteConfigurationPolicyWithContext is the same as DeleteConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteConfigurationPolicy 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 *SecurityHub) DeleteConfigurationPolicyWithContext(ctx aws.Context, input *DeleteConfigurationPolicyInput, opts ...request.Option) (*DeleteConfigurationPolicyOutput, error) { + req, out := c.DeleteConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteFindingAggregator = "DeleteFindingAggregator" // DeleteFindingAggregatorRequest generates a "aws/request.Request" representing the @@ -2637,8 +2952,8 @@ func (c *SecurityHub) DescribeOrganizationConfigurationRequest(input *DescribeOr // DescribeOrganizationConfiguration API operation for AWS SecurityHub. // -// Returns information about the Organizations configuration for Security Hub. -// Can only be called from a Security Hub administrator account. +// Returns information about the way your organization is configured in Security +// Hub. Only the Security Hub administrator account can invoke this operation. // // 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 @@ -3303,6 +3618,9 @@ func (c *SecurityHub) DisableOrganizationAdminAccountRequest(input *DisableOrgan // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisableOrganizationAdminAccount func (c *SecurityHub) DisableOrganizationAdminAccount(input *DisableOrganizationAdminAccountInput) (*DisableOrganizationAdminAccountOutput, error) { req, out := c.DisableOrganizationAdminAccountRequest(input) @@ -3407,6 +3725,9 @@ func (c *SecurityHub) DisableSecurityHubRequest(input *DisableSecurityHubInput) // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisableSecurityHub func (c *SecurityHub) DisableSecurityHub(input *DisableSecurityHubInput) (*DisableSecurityHubOutput, error) { req, out := c.DisableSecurityHubRequest(input) @@ -3724,6 +4045,9 @@ func (c *SecurityHub) DisassociateMembersRequest(input *DisassociateMembersInput // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/DisassociateMembers func (c *SecurityHub) DisassociateMembers(input *DisassociateMembersInput) (*DisassociateMembersOutput, error) { req, out := c.DisassociateMembersRequest(input) @@ -3915,6 +4239,9 @@ func (c *SecurityHub) EnableOrganizationAdminAccountRequest(input *EnableOrganiz // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/EnableOrganizationAdminAccount func (c *SecurityHub) EnableOrganizationAdminAccount(input *EnableOrganizationAdminAccountInput) (*EnableOrganizationAdminAccountOutput, error) { req, out := c.EnableOrganizationAdminAccountRequest(input) @@ -4153,6 +4480,204 @@ func (c *SecurityHub) GetAdministratorAccountWithContext(ctx aws.Context, input return out, req.Send() } +const opGetConfigurationPolicy = "GetConfigurationPolicy" + +// GetConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetConfigurationPolicy 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 GetConfigurationPolicy for more information on using the GetConfigurationPolicy +// 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 GetConfigurationPolicyRequest method. +// req, resp := client.GetConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicy +func (c *SecurityHub) GetConfigurationPolicyRequest(input *GetConfigurationPolicyInput) (req *request.Request, output *GetConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opGetConfigurationPolicy, + HTTPMethod: "GET", + HTTPPath: "/configurationPolicy/get/{Identifier}", + } + + if input == nil { + input = &GetConfigurationPolicyInput{} + } + + output = &GetConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfigurationPolicy API operation for AWS SecurityHub. +// +// Provides information about a configuration policy. Only the Security Hub +// delegated administrator can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation GetConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicy +func (c *SecurityHub) GetConfigurationPolicy(input *GetConfigurationPolicyInput) (*GetConfigurationPolicyOutput, error) { + req, out := c.GetConfigurationPolicyRequest(input) + return out, req.Send() +} + +// GetConfigurationPolicyWithContext is the same as GetConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfigurationPolicy 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 *SecurityHub) GetConfigurationPolicyWithContext(ctx aws.Context, input *GetConfigurationPolicyInput, opts ...request.Option) (*GetConfigurationPolicyOutput, error) { + req, out := c.GetConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetConfigurationPolicyAssociation = "GetConfigurationPolicyAssociation" + +// GetConfigurationPolicyAssociationRequest generates a "aws/request.Request" representing the +// client's request for the GetConfigurationPolicyAssociation 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 GetConfigurationPolicyAssociation for more information on using the GetConfigurationPolicyAssociation +// 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 GetConfigurationPolicyAssociationRequest method. +// req, resp := client.GetConfigurationPolicyAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicyAssociation +func (c *SecurityHub) GetConfigurationPolicyAssociationRequest(input *GetConfigurationPolicyAssociationInput) (req *request.Request, output *GetConfigurationPolicyAssociationOutput) { + op := &request.Operation{ + Name: opGetConfigurationPolicyAssociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/get", + } + + if input == nil { + input = &GetConfigurationPolicyAssociationInput{} + } + + output = &GetConfigurationPolicyAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetConfigurationPolicyAssociation API operation for AWS SecurityHub. +// +// Returns the association between a configuration and a target account, organizational +// unit, or the root. The configuration can be a configuration policy or self-managed +// behavior. Only the Security Hub delegated administrator can invoke this operation +// from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation GetConfigurationPolicyAssociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/GetConfigurationPolicyAssociation +func (c *SecurityHub) GetConfigurationPolicyAssociation(input *GetConfigurationPolicyAssociationInput) (*GetConfigurationPolicyAssociationOutput, error) { + req, out := c.GetConfigurationPolicyAssociationRequest(input) + return out, req.Send() +} + +// GetConfigurationPolicyAssociationWithContext is the same as GetConfigurationPolicyAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See GetConfigurationPolicyAssociation 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 *SecurityHub) GetConfigurationPolicyAssociationWithContext(ctx aws.Context, input *GetConfigurationPolicyAssociationInput, opts ...request.Option) (*GetConfigurationPolicyAssociationOutput, error) { + req, out := c.GetConfigurationPolicyAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetEnabledStandards = "GetEnabledStandards" // GetEnabledStandardsRequest generates a "aws/request.Request" representing the @@ -5549,6 +6074,315 @@ func (c *SecurityHub) ListAutomationRulesWithContext(ctx aws.Context, input *Lis return out, req.Send() } +const opListConfigurationPolicies = "ListConfigurationPolicies" + +// ListConfigurationPoliciesRequest generates a "aws/request.Request" representing the +// client's request for the ListConfigurationPolicies 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 ListConfigurationPolicies for more information on using the ListConfigurationPolicies +// 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 ListConfigurationPoliciesRequest method. +// req, resp := client.ListConfigurationPoliciesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicies +func (c *SecurityHub) ListConfigurationPoliciesRequest(input *ListConfigurationPoliciesInput) (req *request.Request, output *ListConfigurationPoliciesOutput) { + op := &request.Operation{ + Name: opListConfigurationPolicies, + HTTPMethod: "GET", + HTTPPath: "/configurationPolicy/list", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfigurationPoliciesInput{} + } + + output = &ListConfigurationPoliciesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfigurationPolicies API operation for AWS SecurityHub. +// +// Lists the configuration policies that the Security Hub delegated administrator +// has created for your organization. Only the delegated administrator can invoke +// this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation ListConfigurationPolicies for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicies +func (c *SecurityHub) ListConfigurationPolicies(input *ListConfigurationPoliciesInput) (*ListConfigurationPoliciesOutput, error) { + req, out := c.ListConfigurationPoliciesRequest(input) + return out, req.Send() +} + +// ListConfigurationPoliciesWithContext is the same as ListConfigurationPolicies with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfigurationPolicies 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 *SecurityHub) ListConfigurationPoliciesWithContext(ctx aws.Context, input *ListConfigurationPoliciesInput, opts ...request.Option) (*ListConfigurationPoliciesOutput, error) { + req, out := c.ListConfigurationPoliciesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfigurationPoliciesPages iterates over the pages of a ListConfigurationPolicies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfigurationPolicies 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 ListConfigurationPolicies operation. +// pageNum := 0 +// err := client.ListConfigurationPoliciesPages(params, +// func(page *securityhub.ListConfigurationPoliciesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SecurityHub) ListConfigurationPoliciesPages(input *ListConfigurationPoliciesInput, fn func(*ListConfigurationPoliciesOutput, bool) bool) error { + return c.ListConfigurationPoliciesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfigurationPoliciesPagesWithContext same as ListConfigurationPoliciesPages 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 *SecurityHub) ListConfigurationPoliciesPagesWithContext(ctx aws.Context, input *ListConfigurationPoliciesInput, fn func(*ListConfigurationPoliciesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfigurationPoliciesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfigurationPoliciesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfigurationPoliciesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListConfigurationPolicyAssociations = "ListConfigurationPolicyAssociations" + +// ListConfigurationPolicyAssociationsRequest generates a "aws/request.Request" representing the +// client's request for the ListConfigurationPolicyAssociations 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 ListConfigurationPolicyAssociations for more information on using the ListConfigurationPolicyAssociations +// 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 ListConfigurationPolicyAssociationsRequest method. +// req, resp := client.ListConfigurationPolicyAssociationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicyAssociations +func (c *SecurityHub) ListConfigurationPolicyAssociationsRequest(input *ListConfigurationPolicyAssociationsInput) (req *request.Request, output *ListConfigurationPolicyAssociationsOutput) { + op := &request.Operation{ + Name: opListConfigurationPolicyAssociations, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/list", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConfigurationPolicyAssociationsInput{} + } + + output = &ListConfigurationPolicyAssociationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConfigurationPolicyAssociations API operation for AWS SecurityHub. +// +// Provides information about the associations for your configuration policies +// and self-managed behavior. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation ListConfigurationPolicyAssociations for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/ListConfigurationPolicyAssociations +func (c *SecurityHub) ListConfigurationPolicyAssociations(input *ListConfigurationPolicyAssociationsInput) (*ListConfigurationPolicyAssociationsOutput, error) { + req, out := c.ListConfigurationPolicyAssociationsRequest(input) + return out, req.Send() +} + +// ListConfigurationPolicyAssociationsWithContext is the same as ListConfigurationPolicyAssociations with the addition of +// the ability to pass a context and additional request options. +// +// See ListConfigurationPolicyAssociations 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 *SecurityHub) ListConfigurationPolicyAssociationsWithContext(ctx aws.Context, input *ListConfigurationPolicyAssociationsInput, opts ...request.Option) (*ListConfigurationPolicyAssociationsOutput, error) { + req, out := c.ListConfigurationPolicyAssociationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConfigurationPolicyAssociationsPages iterates over the pages of a ListConfigurationPolicyAssociations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConfigurationPolicyAssociations 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 ListConfigurationPolicyAssociations operation. +// pageNum := 0 +// err := client.ListConfigurationPolicyAssociationsPages(params, +// func(page *securityhub.ListConfigurationPolicyAssociationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *SecurityHub) ListConfigurationPolicyAssociationsPages(input *ListConfigurationPolicyAssociationsInput, fn func(*ListConfigurationPolicyAssociationsOutput, bool) bool) error { + return c.ListConfigurationPolicyAssociationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConfigurationPolicyAssociationsPagesWithContext same as ListConfigurationPolicyAssociationsPages 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 *SecurityHub) ListConfigurationPolicyAssociationsPagesWithContext(ctx aws.Context, input *ListConfigurationPolicyAssociationsInput, fn func(*ListConfigurationPolicyAssociationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConfigurationPolicyAssociationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConfigurationPolicyAssociationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConfigurationPolicyAssociationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListEnabledProductsForImport = "ListEnabledProductsForImport" // ListEnabledProductsForImportRequest generates a "aws/request.Request" representing the @@ -6683,6 +7517,210 @@ func (c *SecurityHub) ListTagsForResourceWithContext(ctx aws.Context, input *Lis return out, req.Send() } +const opStartConfigurationPolicyAssociation = "StartConfigurationPolicyAssociation" + +// StartConfigurationPolicyAssociationRequest generates a "aws/request.Request" representing the +// client's request for the StartConfigurationPolicyAssociation 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 StartConfigurationPolicyAssociation for more information on using the StartConfigurationPolicyAssociation +// 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 StartConfigurationPolicyAssociationRequest method. +// req, resp := client.StartConfigurationPolicyAssociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyAssociation +func (c *SecurityHub) StartConfigurationPolicyAssociationRequest(input *StartConfigurationPolicyAssociationInput) (req *request.Request, output *StartConfigurationPolicyAssociationOutput) { + op := &request.Operation{ + Name: opStartConfigurationPolicyAssociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/associate", + } + + if input == nil { + input = &StartConfigurationPolicyAssociationInput{} + } + + output = &StartConfigurationPolicyAssociationOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartConfigurationPolicyAssociation API operation for AWS SecurityHub. +// +// Associates a target account, organizational unit, or the root with a specified +// configuration. The target can be associated with a configuration policy or +// self-managed behavior. Only the Security Hub delegated administrator can +// invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation StartConfigurationPolicyAssociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyAssociation +func (c *SecurityHub) StartConfigurationPolicyAssociation(input *StartConfigurationPolicyAssociationInput) (*StartConfigurationPolicyAssociationOutput, error) { + req, out := c.StartConfigurationPolicyAssociationRequest(input) + return out, req.Send() +} + +// StartConfigurationPolicyAssociationWithContext is the same as StartConfigurationPolicyAssociation with the addition of +// the ability to pass a context and additional request options. +// +// See StartConfigurationPolicyAssociation 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 *SecurityHub) StartConfigurationPolicyAssociationWithContext(ctx aws.Context, input *StartConfigurationPolicyAssociationInput, opts ...request.Option) (*StartConfigurationPolicyAssociationOutput, error) { + req, out := c.StartConfigurationPolicyAssociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStartConfigurationPolicyDisassociation = "StartConfigurationPolicyDisassociation" + +// StartConfigurationPolicyDisassociationRequest generates a "aws/request.Request" representing the +// client's request for the StartConfigurationPolicyDisassociation 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 StartConfigurationPolicyDisassociation for more information on using the StartConfigurationPolicyDisassociation +// 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 StartConfigurationPolicyDisassociationRequest method. +// req, resp := client.StartConfigurationPolicyDisassociationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyDisassociation +func (c *SecurityHub) StartConfigurationPolicyDisassociationRequest(input *StartConfigurationPolicyDisassociationInput) (req *request.Request, output *StartConfigurationPolicyDisassociationOutput) { + op := &request.Operation{ + Name: opStartConfigurationPolicyDisassociation, + HTTPMethod: "POST", + HTTPPath: "/configurationPolicyAssociation/disassociate", + } + + if input == nil { + input = &StartConfigurationPolicyDisassociationInput{} + } + + output = &StartConfigurationPolicyDisassociationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// StartConfigurationPolicyDisassociation API operation for AWS SecurityHub. +// +// Disassociates a target account, organizational unit, or the root from a specified +// configuration. When you disassociate a configuration from its target, the +// target inherits the configuration of the closest parent. If there’s no +// configuration to inherit, the target retains its settings but becomes a self-managed +// account. A target can be disassociated from a configuration policy or self-managed +// behavior. Only the Security Hub delegated administrator can invoke this operation +// from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation StartConfigurationPolicyDisassociation for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/StartConfigurationPolicyDisassociation +func (c *SecurityHub) StartConfigurationPolicyDisassociation(input *StartConfigurationPolicyDisassociationInput) (*StartConfigurationPolicyDisassociationOutput, error) { + req, out := c.StartConfigurationPolicyDisassociationRequest(input) + return out, req.Send() +} + +// StartConfigurationPolicyDisassociationWithContext is the same as StartConfigurationPolicyDisassociation with the addition of +// the ability to pass a context and additional request options. +// +// See StartConfigurationPolicyDisassociation 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 *SecurityHub) StartConfigurationPolicyDisassociationWithContext(ctx aws.Context, input *StartConfigurationPolicyDisassociationInput, opts ...request.Option) (*StartConfigurationPolicyDisassociationOutput, error) { + req, out := c.StartConfigurationPolicyDisassociationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -6950,6 +7988,107 @@ func (c *SecurityHub) UpdateActionTargetWithContext(ctx aws.Context, input *Upda return out, req.Send() } +const opUpdateConfigurationPolicy = "UpdateConfigurationPolicy" + +// UpdateConfigurationPolicyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateConfigurationPolicy 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 UpdateConfigurationPolicy for more information on using the UpdateConfigurationPolicy +// 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 UpdateConfigurationPolicyRequest method. +// req, resp := client.UpdateConfigurationPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateConfigurationPolicy +func (c *SecurityHub) UpdateConfigurationPolicyRequest(input *UpdateConfigurationPolicyInput) (req *request.Request, output *UpdateConfigurationPolicyOutput) { + op := &request.Operation{ + Name: opUpdateConfigurationPolicy, + HTTPMethod: "PATCH", + HTTPPath: "/configurationPolicy/{Identifier}", + } + + if input == nil { + input = &UpdateConfigurationPolicyInput{} + } + + output = &UpdateConfigurationPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateConfigurationPolicy API operation for AWS SecurityHub. +// +// Updates a configuration policy. Only the Security Hub delegated administrator +// can invoke this operation from the home Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS SecurityHub's +// API operation UpdateConfigurationPolicy for usage and error information. +// +// Returned Error Types: +// +// - InternalException +// Internal server error. +// +// - InvalidAccessException +// The account doesn't have permission to perform this action. +// +// - InvalidInputException +// The request was rejected because you supplied an invalid or out-of-range +// value for an input parameter. +// +// - LimitExceededException +// The request was rejected because it attempted to create resources beyond +// the current Amazon Web Services account or throttling limits. The error code +// describes the limit exceeded. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateConfigurationPolicy +func (c *SecurityHub) UpdateConfigurationPolicy(input *UpdateConfigurationPolicyInput) (*UpdateConfigurationPolicyOutput, error) { + req, out := c.UpdateConfigurationPolicyRequest(input) + return out, req.Send() +} + +// UpdateConfigurationPolicyWithContext is the same as UpdateConfigurationPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateConfigurationPolicy 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 *SecurityHub) UpdateConfigurationPolicyWithContext(ctx aws.Context, input *UpdateConfigurationPolicyInput, opts ...request.Option) (*UpdateConfigurationPolicyOutput, error) { + req, out := c.UpdateConfigurationPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateFindingAggregator = "UpdateFindingAggregator" // UpdateFindingAggregatorRequest generates a "aws/request.Request" representing the @@ -7289,8 +8428,8 @@ func (c *SecurityHub) UpdateOrganizationConfigurationRequest(input *UpdateOrgani // UpdateOrganizationConfiguration API operation for AWS SecurityHub. // -// Used to update the configuration related to Organizations. Can only be called -// from a Security Hub administrator account. +// Updates the configuration of your organization in Security Hub. Only the +// Security Hub administrator account can invoke this operation. // // 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 @@ -7316,6 +8455,15 @@ func (c *SecurityHub) UpdateOrganizationConfigurationRequest(input *UpdateOrgani // the current Amazon Web Services account or throttling limits. The error code // describes the limit exceeded. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// +// - ResourceNotFoundException +// The request was rejected because we can't find the specified resource. +// +// - ResourceConflictException +// The resource specified in the request conflicts with an existing resource. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateOrganizationConfiguration func (c *SecurityHub) UpdateOrganizationConfiguration(input *UpdateOrganizationConfigurationInput) (*UpdateOrganizationConfigurationOutput, error) { req, out := c.UpdateOrganizationConfigurationRequest(input) @@ -7416,6 +8564,9 @@ func (c *SecurityHub) UpdateSecurityControlRequest(input *UpdateSecurityControlI // For example, you tried to update a security control that's currently in the // UPDATING state. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityControl func (c *SecurityHub) UpdateSecurityControl(input *UpdateSecurityControlInput) (*UpdateSecurityControlOutput, error) { req, out := c.UpdateSecurityControlRequest(input) @@ -7511,6 +8662,9 @@ func (c *SecurityHub) UpdateSecurityHubConfigurationRequest(input *UpdateSecurit // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityHubConfiguration func (c *SecurityHub) UpdateSecurityHubConfiguration(input *UpdateSecurityHubConfigurationInput) (*UpdateSecurityHubConfigurationOutput, error) { req, out := c.UpdateSecurityHubConfigurationRequest(input) @@ -7602,6 +8756,9 @@ func (c *SecurityHub) UpdateStandardsControlRequest(input *UpdateStandardsContro // - ResourceNotFoundException // The request was rejected because we can't find the specified resource. // +// - AccessDeniedException +// You don't have permission to perform the action specified in the request. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateStandardsControl func (c *SecurityHub) UpdateStandardsControl(input *UpdateStandardsControlInput) (*UpdateStandardsControlOutput, error) { req, out := c.UpdateStandardsControlRequest(input) @@ -8365,6 +9522,61 @@ func (s *AssociatedStandard) SetStandardsId(v string) *AssociatedStandard { return s } +// Options for filtering the ListConfigurationPolicyAssociations response. You +// can filter by the Amazon Resource Name (ARN) or universally unique identifier +// (UUID) of a configuration policy, AssociationType, or AssociationStatus. +type AssociationFilters struct { + _ struct{} `type:"structure"` + + // The current status of the association between a target and a configuration + // policy. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // Indicates whether the association between a target and a configuration was + // directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The ARN or UUID of the configuration policy. + ConfigurationPolicyId *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 AssociationFilters) 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 AssociationFilters) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *AssociationFilters) SetAssociationStatus(v string) *AssociationFilters { + s.AssociationStatus = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *AssociationFilters) SetAssociationType(v string) *AssociationFilters { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *AssociationFilters) SetConfigurationPolicyId(v string) *AssociationFilters { + s.ConfigurationPolicyId = &v + return s +} + // The associations between a route table and one or more subnets or a gateway. type AssociationSetDetails struct { _ struct{} `type:"structure"` @@ -8827,6 +10039,11 @@ type AutomationRulesFindingFilters struct { // Array Members: Minimum number of 1 item. Maximum number of 100 items. AwsAccountId []*StringFilter `type:"list"` + // The name of the Amazon Web Services account in which a finding was generated. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + AwsAccountName []*StringFilter `type:"list"` + // The name of the company for the product that generated the finding. For control-based // findings, the company is Amazon Web Services. // @@ -8963,6 +10180,16 @@ type AutomationRulesFindingFilters struct { // Array Members: Minimum number of 1 item. Maximum number of 20 items. RelatedFindingsProductArn []*StringFilter `type:"list"` + // The Amazon Resource Name (ARN) of the application that is related to a finding. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + ResourceApplicationArn []*StringFilter `type:"list"` + + // The name of the application that is related to a finding. + // + // Array Members: Minimum number of 1 item. Maximum number of 20 items. + ResourceApplicationName []*StringFilter `type:"list"` + // Custom fields and values about the resource that a finding pertains to. // // Array Members: Minimum number of 1 item. Maximum number of 20 items. @@ -9074,6 +10301,12 @@ func (s *AutomationRulesFindingFilters) SetAwsAccountId(v []*StringFilter) *Auto return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AutomationRulesFindingFilters) SetAwsAccountName(v []*StringFilter) *AutomationRulesFindingFilters { + s.AwsAccountName = v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AutomationRulesFindingFilters) SetCompanyName(v []*StringFilter) *AutomationRulesFindingFilters { s.CompanyName = v @@ -9194,6 +10427,18 @@ func (s *AutomationRulesFindingFilters) SetRelatedFindingsProductArn(v []*String return s } +// SetResourceApplicationArn sets the ResourceApplicationArn field's value. +func (s *AutomationRulesFindingFilters) SetResourceApplicationArn(v []*StringFilter) *AutomationRulesFindingFilters { + s.ResourceApplicationArn = v + return s +} + +// SetResourceApplicationName sets the ResourceApplicationName field's value. +func (s *AutomationRulesFindingFilters) SetResourceApplicationName(v []*StringFilter) *AutomationRulesFindingFilters { + s.ResourceApplicationName = v + return s +} + // SetResourceDetailsOther sets the ResourceDetailsOther field's value. func (s *AutomationRulesFindingFilters) SetResourceDetailsOther(v []*MapFilter) *AutomationRulesFindingFilters { s.ResourceDetailsOther = v @@ -40317,6 +41562,9 @@ type AwsSecurityFinding struct { // AwsAccountId is a required field AwsAccountId *string `type:"string" required:"true"` + // The name of the Amazon Web Services account from which a finding was generated. + AwsAccountName *string `type:"string"` + // The name of the company for the product that generated the finding. // // Security Hub populates this attribute automatically for each finding. You @@ -40426,6 +41674,14 @@ type AwsSecurityFinding struct { // The details of process-related information about a finding. Process *ProcessDetails `type:"structure"` + // An ISO8601-formatted timestamp that indicates when Security Hub received + // a finding and begins to process it. + // + // A correctly formatted example is 2020-05-21T20:16:34.724Z. The value cannot + // contain spaces, and date and time should be separated by T. For more information, + // see RFC 3339 section 5.6, Internet Date/Time Format (https://www.rfc-editor.org/rfc/rfc3339#section-5.6). + ProcessedAt *string `type:"string"` + // The ARN generated by Security Hub that uniquely identifies a product that // generates findings. This can be the ARN for a third-party product that is // integrated with Security Hub, or the ARN for a custom integration. @@ -40664,6 +41920,12 @@ func (s *AwsSecurityFinding) SetAwsAccountId(v string) *AwsSecurityFinding { return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AwsSecurityFinding) SetAwsAccountName(v string) *AwsSecurityFinding { + s.AwsAccountName = &v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AwsSecurityFinding) SetCompanyName(v string) *AwsSecurityFinding { s.CompanyName = &v @@ -40772,6 +42034,12 @@ func (s *AwsSecurityFinding) SetProcess(v *ProcessDetails) *AwsSecurityFinding { return s } +// SetProcessedAt sets the ProcessedAt field's value. +func (s *AwsSecurityFinding) SetProcessedAt(v string) *AwsSecurityFinding { + s.ProcessedAt = &v + return s +} + // SetProductArn sets the ProductArn field's value. func (s *AwsSecurityFinding) SetProductArn(v string) *AwsSecurityFinding { s.ProductArn = &v @@ -40912,9 +42180,12 @@ func (s *AwsSecurityFinding) SetWorkflowState(v string) *AwsSecurityFinding { type AwsSecurityFindingFilters struct { _ struct{} `type:"structure"` - // The Amazon Web Services account ID that a finding is generated in. + // The Amazon Web Services account ID in which a finding is generated. AwsAccountId []*StringFilter `type:"list"` + // The name of the Amazon Web Services account in which a finding is generated. + AwsAccountName []*StringFilter `type:"list"` + // The name of the findings provider (company) that owns the solution (product) // that generates findings. CompanyName []*StringFilter `type:"list"` @@ -41139,6 +42410,12 @@ type AwsSecurityFindingFilters struct { // The ARN of the solution that generated a related finding. RelatedFindingsProductArn []*StringFilter `type:"list"` + // The ARN of the application that is related to a finding. + ResourceApplicationArn []*StringFilter `type:"list"` + + // The name of the application that is related to a finding. + ResourceApplicationName []*StringFilter `type:"list"` + // The IAM profile ARN of the instance. ResourceAwsEc2InstanceIamInstanceProfileArn []*StringFilter `type:"list"` @@ -41357,6 +42634,12 @@ func (s *AwsSecurityFindingFilters) SetAwsAccountId(v []*StringFilter) *AwsSecur return s } +// SetAwsAccountName sets the AwsAccountName field's value. +func (s *AwsSecurityFindingFilters) SetAwsAccountName(v []*StringFilter) *AwsSecurityFindingFilters { + s.AwsAccountName = v + return s +} + // SetCompanyName sets the CompanyName field's value. func (s *AwsSecurityFindingFilters) SetCompanyName(v []*StringFilter) *AwsSecurityFindingFilters { s.CompanyName = v @@ -41681,6 +42964,18 @@ func (s *AwsSecurityFindingFilters) SetRelatedFindingsProductArn(v []*StringFilt return s } +// SetResourceApplicationArn sets the ResourceApplicationArn field's value. +func (s *AwsSecurityFindingFilters) SetResourceApplicationArn(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceApplicationArn = v + return s +} + +// SetResourceApplicationName sets the ResourceApplicationName field's value. +func (s *AwsSecurityFindingFilters) SetResourceApplicationName(v []*StringFilter) *AwsSecurityFindingFilters { + s.ResourceApplicationName = v + return s +} + // SetResourceAwsEc2InstanceIamInstanceProfileArn sets the ResourceAwsEc2InstanceIamInstanceProfileArn field's value. func (s *AwsSecurityFindingFilters) SetResourceAwsEc2InstanceIamInstanceProfileArn(v []*StringFilter) *AwsSecurityFindingFilters { s.ResourceAwsEc2InstanceIamInstanceProfileArn = v @@ -45207,6 +46502,95 @@ func (s *BatchGetAutomationRulesOutput) SetUnprocessedAutomationRules(v []*Unpro return s } +type BatchGetConfigurationPolicyAssociationsInput struct { + _ struct{} `type:"structure"` + + // Specifies one or more target account IDs, organizational unit (OU) IDs, or + // the root ID to retrieve associations for. + // + // ConfigurationPolicyAssociationIdentifiers is a required field + ConfigurationPolicyAssociationIdentifiers []*ConfigurationPolicyAssociation `type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchGetConfigurationPolicyAssociationsInput) 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 BatchGetConfigurationPolicyAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchGetConfigurationPolicyAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchGetConfigurationPolicyAssociationsInput"} + if s.ConfigurationPolicyAssociationIdentifiers == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyAssociationIdentifiers")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyAssociationIdentifiers sets the ConfigurationPolicyAssociationIdentifiers field's value. +func (s *BatchGetConfigurationPolicyAssociationsInput) SetConfigurationPolicyAssociationIdentifiers(v []*ConfigurationPolicyAssociation) *BatchGetConfigurationPolicyAssociationsInput { + s.ConfigurationPolicyAssociationIdentifiers = v + return s +} + +type BatchGetConfigurationPolicyAssociationsOutput struct { + _ struct{} `type:"structure"` + + // Describes associations for the target accounts, OUs, or the root. + ConfigurationPolicyAssociations []*ConfigurationPolicyAssociationSummary `type:"list"` + + // An array of configuration policy associations, one for each configuration + // policy association identifier, that was specified in the request but couldn’t + // be processed due to an error. + UnprocessedConfigurationPolicyAssociations []*UnprocessedConfigurationPolicyAssociation `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 BatchGetConfigurationPolicyAssociationsOutput) 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 BatchGetConfigurationPolicyAssociationsOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociations sets the ConfigurationPolicyAssociations field's value. +func (s *BatchGetConfigurationPolicyAssociationsOutput) SetConfigurationPolicyAssociations(v []*ConfigurationPolicyAssociationSummary) *BatchGetConfigurationPolicyAssociationsOutput { + s.ConfigurationPolicyAssociations = v + return s +} + +// SetUnprocessedConfigurationPolicyAssociations sets the UnprocessedConfigurationPolicyAssociations field's value. +func (s *BatchGetConfigurationPolicyAssociationsOutput) SetUnprocessedConfigurationPolicyAssociations(v []*UnprocessedConfigurationPolicyAssociation) *BatchGetConfigurationPolicyAssociationsOutput { + s.UnprocessedConfigurationPolicyAssociations = v + return s +} + type BatchGetSecurityControlsInput struct { _ struct{} `type:"structure"` @@ -46697,6 +48081,213 @@ func (s *ConfigurationOptions) SetString_(v *StringConfigurationOptions) *Config return s } +// Provides details about the association between an Security Hub configuration +// and a target account, organizational unit, or the root. An association can +// exist between a target and a configuration policy, or between a target and +// self-managed behavior. +type ConfigurationPolicyAssociation struct { + _ struct{} `type:"structure"` + + // The target account, organizational unit, or the root. + Target *Target `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 ConfigurationPolicyAssociation) 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 ConfigurationPolicyAssociation) GoString() string { + return s.String() +} + +// SetTarget sets the Target field's value. +func (s *ConfigurationPolicyAssociation) SetTarget(v *Target) *ConfigurationPolicyAssociation { + s.Target = v + return s +} + +// An object that contains the details of a configuration policy association +// that’s returned in a ListConfigurationPolicyAssociations request. +type ConfigurationPolicyAssociationSummary struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // The explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The universally unique identifier (UUID) of the configuration policy. + ConfigurationPolicyId *string `type:"string"` + + // The identifier of the target account, organizational unit, or the root. + TargetId *string `type:"string"` + + // Specifies whether the target is an Amazon Web Services account, organizational + // unit, or the root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *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 ConfigurationPolicyAssociationSummary) 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 ConfigurationPolicyAssociationSummary) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationStatus(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationStatusMessage(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *ConfigurationPolicyAssociationSummary) SetAssociationType(v string) *ConfigurationPolicyAssociationSummary { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *ConfigurationPolicyAssociationSummary) SetConfigurationPolicyId(v string) *ConfigurationPolicyAssociationSummary { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *ConfigurationPolicyAssociationSummary) SetTargetId(v string) *ConfigurationPolicyAssociationSummary { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *ConfigurationPolicyAssociationSummary) SetTargetType(v string) *ConfigurationPolicyAssociationSummary { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ConfigurationPolicyAssociationSummary) SetUpdatedAt(v time.Time) *ConfigurationPolicyAssociationSummary { + s.UpdatedAt = &v + return s +} + +// An object that contains the details of an Security Hub configuration policy +// that’s returned in a ListConfigurationPolicies request. +type ConfigurationPolicySummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configuration policy. + Arn *string `type:"string"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The universally unique identifier (UUID) of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // Indicates whether the service that the configuration policy applies to is + // enabled in the policy. + ServiceEnabled *bool `type:"boolean"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *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 ConfigurationPolicySummary) 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 ConfigurationPolicySummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *ConfigurationPolicySummary) SetArn(v string) *ConfigurationPolicySummary { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConfigurationPolicySummary) SetDescription(v string) *ConfigurationPolicySummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *ConfigurationPolicySummary) SetId(v string) *ConfigurationPolicySummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *ConfigurationPolicySummary) SetName(v string) *ConfigurationPolicySummary { + s.Name = &v + return s +} + +// SetServiceEnabled sets the ServiceEnabled field's value. +func (s *ConfigurationPolicySummary) SetServiceEnabled(v bool) *ConfigurationPolicySummary { + s.ServiceEnabled = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *ConfigurationPolicySummary) SetUpdatedAt(v time.Time) *ConfigurationPolicySummary { + s.UpdatedAt = &v + return s +} + // Container details related to a finding. type ContainerDetails struct { _ struct{} `type:"structure"` @@ -46985,7 +48576,7 @@ type CreateAutomationRuleInput struct { // after creating a rule, use BatchUpdateAutomationRules (https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html). RuleStatus *string `type:"string" enum:"RuleStatus"` - // User-defined tags that help you label the purpose of a rule. + // User-defined tags associated with an automation rule. Tags map[string]*string `min:"1" type:"map"` } @@ -47130,6 +48721,195 @@ func (s *CreateAutomationRuleOutput) SetRuleArn(v string) *CreateAutomationRuleO return s } +type CreateConfigurationPolicyInput struct { + _ struct{} `type:"structure"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If you provide a list of security controls + // that are enabled in the configuration policy, Security Hub disables all other + // controls (including newly released controls). If you provide a list of security + // controls that are disabled in the configuration policy, Security Hub enables + // all other controls (including newly released controls). + // + // ConfigurationPolicy is a required field + ConfigurationPolicy *Policy `type:"structure" required:"true"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The name of the configuration policy. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // User-defined tags associated with a configuration policy. For more information, + // see Tagging Security Hub resources (https://docs.aws.amazon.com/securityhub/latest/userguide/tagging-resources.html) + // in the Security Hub user guide. + Tags map[string]*string `min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateConfigurationPolicyInput) 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 CreateConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateConfigurationPolicyInput"} + if s.ConfigurationPolicy == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicy")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ConfigurationPolicy != nil { + if err := s.ConfigurationPolicy.Validate(); err != nil { + invalidParams.AddNested("ConfigurationPolicy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *CreateConfigurationPolicyInput) SetConfigurationPolicy(v *Policy) *CreateConfigurationPolicyInput { + s.ConfigurationPolicy = v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfigurationPolicyInput) SetDescription(v string) *CreateConfigurationPolicyInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConfigurationPolicyInput) SetName(v string) *CreateConfigurationPolicyInput { + s.Name = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateConfigurationPolicyInput) SetTags(v map[string]*string) *CreateConfigurationPolicyInput { + s.Tags = v + return s +} + +type CreateConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the request included a list of security + // controls that are enabled in the configuration policy, Security Hub disables + // all other controls (including newly released controls). If the request included + // a list of security controls that are disabled in the configuration policy, + // Security Hub enables all other controls (including newly released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The universally unique identifier (UUID) of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *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 CreateConfigurationPolicyOutput) 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 CreateConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateConfigurationPolicyOutput) SetArn(v string) *CreateConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *CreateConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *CreateConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *CreateConfigurationPolicyOutput) SetCreatedAt(v time.Time) *CreateConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateConfigurationPolicyOutput) SetDescription(v string) *CreateConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateConfigurationPolicyOutput) SetId(v string) *CreateConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateConfigurationPolicyOutput) SetName(v string) *CreateConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *CreateConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *CreateConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type CreateFindingAggregatorInput struct { _ struct{} `type:"structure"` @@ -47943,6 +49723,78 @@ func (s *DeleteActionTargetOutput) SetActionTargetArn(v string) *DeleteActionTar return s } +type DeleteConfigurationPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // 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 DeleteConfigurationPolicyInput) 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 DeleteConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteConfigurationPolicyInput"} + 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 *DeleteConfigurationPolicyInput) SetIdentifier(v string) *DeleteConfigurationPolicyInput { + s.Identifier = &v + return s +} + +type DeleteConfigurationPolicyOutput 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 DeleteConfigurationPolicyOutput) 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 DeleteConfigurationPolicyOutput) GoString() string { + return s.String() +} + type DeleteFindingAggregatorInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -48493,25 +50345,42 @@ func (s DescribeOrganizationConfigurationInput) GoString() string { type DescribeOrganizationConfigurationOutput struct { _ struct{} `type:"structure"` - // Whether to automatically enable Security Hub for new accounts in the organization. + // Whether to automatically enable Security Hub in new member accounts when + // they join the organization. + // + // If set to true, then Security Hub is automatically enabled in new accounts. + // If set to false, then Security Hub isn't enabled in new accounts automatically. + // The default value is false. // - // If set to true, then Security Hub is enabled for new accounts. If set to - // false, then new accounts are not added automatically. + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to false and can't be changed in the home Region and linked + // Regions. However, in that case, the delegated administrator can create a + // configuration policy in which Security Hub is enabled and associate the policy + // with new organization accounts. AutoEnable *bool `type:"boolean"` // Whether to automatically enable Security Hub default standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html) - // for new member accounts in the organization. - // - // The default value of this parameter is equal to DEFAULT. + // in new member accounts when they join the organization. // // If equal to DEFAULT, then Security Hub default standards are automatically // enabled for new member accounts. If equal to NONE, then default standards - // are not automatically enabled for new member accounts. + // are not automatically enabled for new member accounts. The default value + // of this parameter is equal to DEFAULT. + // + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to NONE and can't be changed in the home Region and linked Regions. + // However, in that case, the delegated administrator can create a configuration + // policy in which specific security standards are enabled and associate the + // policy with new organization accounts. AutoEnableStandards *string `type:"string" enum:"AutoEnableStandards"` // Whether the maximum number of allowed member accounts are already associated // with the Security Hub administrator account. MemberAccountLimitReached *bool `type:"boolean"` + + // Provides information about the way an organization is configured in Security + // Hub. + OrganizationConfiguration *OrganizationConfiguration `type:"structure"` } // String returns the string representation. @@ -48550,6 +50419,12 @@ func (s *DescribeOrganizationConfigurationOutput) SetMemberAccountLimitReached(v return s } +// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. +func (s *DescribeOrganizationConfigurationOutput) SetOrganizationConfiguration(v *OrganizationConfiguration) *DescribeOrganizationConfigurationOutput { + s.OrganizationConfiguration = v + return s +} + type DescribeProductsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -50422,6 +52297,289 @@ func (s *GetAdministratorAccountOutput) SetAdministrator(v *Invitation) *GetAdmi return s } +type GetConfigurationPolicyAssociationInput struct { + _ struct{} `type:"structure"` + + // The target account ID, organizational unit ID, or the root ID to retrieve + // the association for. + // + // Target is a required field + Target *Target `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 GetConfigurationPolicyAssociationInput) 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 GetConfigurationPolicyAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfigurationPolicyAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfigurationPolicyAssociationInput"} + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTarget sets the Target field's value. +func (s *GetConfigurationPolicyAssociationInput) SetTarget(v *Target) *GetConfigurationPolicyAssociationInput { + s.Target = v + return s +} + +type GetConfigurationPolicyAssociationOutput struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // The explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The universally unique identifier (UUID) of a configuration policy. For self-managed + // behavior, the value is SELF_MANAGED_SECURITY_HUB. + ConfigurationPolicyId *string `type:"string"` + + // The target account ID, organizational unit ID, or the root ID for which the + // association is retrieved. + TargetId *string `type:"string"` + + // Specifies whether the target is an Amazon Web Services account, organizational + // unit, or the organization root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *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 GetConfigurationPolicyAssociationOutput) 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 GetConfigurationPolicyAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationStatus(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationStatusMessage(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetAssociationType(v string) *GetConfigurationPolicyAssociationOutput { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetConfigurationPolicyId(v string) *GetConfigurationPolicyAssociationOutput { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetTargetId(v string) *GetConfigurationPolicyAssociationOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetTargetType(v string) *GetConfigurationPolicyAssociationOutput { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetConfigurationPolicyAssociationOutput) SetUpdatedAt(v time.Time) *GetConfigurationPolicyAssociationOutput { + s.UpdatedAt = &v + return s +} + +type GetConfigurationPolicyInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // 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 GetConfigurationPolicyInput) 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 GetConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetConfigurationPolicyInput"} + 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 *GetConfigurationPolicyInput) SetIdentifier(v string) *GetConfigurationPolicyInput { + s.Identifier = &v + return s +} + +type GetConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the policy includes a list of security + // controls that are enabled, Security Hub disables all other controls (including + // newly released controls). If the policy includes a list of security controls + // that are disabled, Security Hub enables all other controls (including newly + // released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The UUID of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *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 GetConfigurationPolicyOutput) 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 GetConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetConfigurationPolicyOutput) SetArn(v string) *GetConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *GetConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *GetConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *GetConfigurationPolicyOutput) SetCreatedAt(v time.Time) *GetConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetConfigurationPolicyOutput) SetDescription(v string) *GetConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetConfigurationPolicyOutput) SetId(v string) *GetConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetConfigurationPolicyOutput) SetName(v string) *GetConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *GetConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *GetConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type GetEnabledStandardsInput struct { _ struct{} `type:"structure"` @@ -52481,6 +54639,229 @@ func (s *ListAutomationRulesOutput) SetNextToken(v string) *ListAutomationRulesO return s } +type ListConfigurationPoliciesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The maximum number of results that's returned by ListConfigurationPolicies + // in each page of the response. When this parameter is used, ListConfigurationPolicies + // returns the specified number of results in a single page and a NextToken + // response element. You can see the remaining results of the initial request + // by sending another ListConfigurationPolicies request with the returned NextToken + // value. A valid range for MaxResults is between 1 and 100. + MaxResults *int64 `location:"querystring" locationName:"MaxResults" min:"1" type:"integer"` + + // The NextToken value that's returned from a previous paginated ListConfigurationPolicies + // request where MaxResults was used but the results exceeded the value of that + // parameter. Pagination continues from the MaxResults was used but the results + // exceeded the value of that parameter. Pagination continues from the end of + // the previous response that returned the NextToken value. This value is null + // when there are no more results to return. + NextToken *string `location:"querystring" locationName:"NextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConfigurationPoliciesInput) 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 ListConfigurationPoliciesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfigurationPoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfigurationPoliciesInput"} + 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 *ListConfigurationPoliciesInput) SetMaxResults(v int64) *ListConfigurationPoliciesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPoliciesInput) SetNextToken(v string) *ListConfigurationPoliciesInput { + s.NextToken = &v + return s +} + +type ListConfigurationPoliciesOutput struct { + _ struct{} `type:"structure"` + + // Provides metadata for each of your configuration policies. + ConfigurationPolicySummaries []*ConfigurationPolicySummary `type:"list"` + + // The NextToken value to include in the next ListConfigurationPolicies request. + // When the results of a ListConfigurationPolicies request exceed MaxResults, + // this value can be used to retrieve the next page of results. This value is + // null when there are no more results to return. + 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 ListConfigurationPoliciesOutput) 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 ListConfigurationPoliciesOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicySummaries sets the ConfigurationPolicySummaries field's value. +func (s *ListConfigurationPoliciesOutput) SetConfigurationPolicySummaries(v []*ConfigurationPolicySummary) *ListConfigurationPoliciesOutput { + s.ConfigurationPolicySummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPoliciesOutput) SetNextToken(v string) *ListConfigurationPoliciesOutput { + s.NextToken = &v + return s +} + +type ListConfigurationPolicyAssociationsInput struct { + _ struct{} `type:"structure"` + + // Options for filtering the ListConfigurationPolicyAssociations response. You + // can filter by the Amazon Resource Name (ARN) or universally unique identifier + // (UUID) of a configuration, AssociationType, or AssociationStatus. + Filters *AssociationFilters `type:"structure"` + + // The maximum number of results that's returned by ListConfigurationPolicies + // in each page of the response. When this parameter is used, ListConfigurationPolicyAssociations + // returns the specified number of results in a single page and a NextToken + // response element. You can see the remaining results of the initial request + // by sending another ListConfigurationPolicyAssociations request with the returned + // NextToken value. A valid range for MaxResults is between 1 and 100. + MaxResults *int64 `min:"1" type:"integer"` + + // The NextToken value that's returned from a previous paginated ListConfigurationPolicyAssociations + // request where MaxResults was used but the results exceeded the value of that + // parameter. Pagination continues from the end of the previous response that + // returned the NextToken value. This value is null when there are no more results + // to return. + 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 ListConfigurationPolicyAssociationsInput) 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 ListConfigurationPolicyAssociationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConfigurationPolicyAssociationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConfigurationPolicyAssociationsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetFilters(v *AssociationFilters) *ListConfigurationPolicyAssociationsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetMaxResults(v int64) *ListConfigurationPolicyAssociationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPolicyAssociationsInput) SetNextToken(v string) *ListConfigurationPolicyAssociationsInput { + s.NextToken = &v + return s +} + +type ListConfigurationPolicyAssociationsOutput struct { + _ struct{} `type:"structure"` + + // An object that contains the details of each configuration policy association + // that’s returned in a ListConfigurationPolicyAssociations request. + ConfigurationPolicyAssociationSummaries []*ConfigurationPolicyAssociationSummary `type:"list"` + + // The NextToken value to include in the next ListConfigurationPolicyAssociations + // request. When the results of a ListConfigurationPolicyAssociations request + // exceed MaxResults, this value can be used to retrieve the next page of results. + // This value is null when there are no more results to return. + 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 ListConfigurationPolicyAssociationsOutput) 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 ListConfigurationPolicyAssociationsOutput) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociationSummaries sets the ConfigurationPolicyAssociationSummaries field's value. +func (s *ListConfigurationPolicyAssociationsOutput) SetConfigurationPolicyAssociationSummaries(v []*ConfigurationPolicyAssociationSummary) *ListConfigurationPolicyAssociationsOutput { + s.ConfigurationPolicyAssociationSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConfigurationPolicyAssociationsOutput) SetNextToken(v string) *ListConfigurationPolicyAssociationsOutput { + s.NextToken = &v + return s +} + type ListEnabledProductsForImportInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -54288,6 +56669,74 @@ func (s *Occurrences) SetRecords(v []*Record) *Occurrences { return s } +// Provides information about the way an organization is configured in Security +// Hub. +type OrganizationConfiguration struct { + _ struct{} `type:"structure"` + + // Indicates whether the organization uses local or central configuration. + // + // If you use local configuration, the Security Hub delegated administrator + // can set AutoEnable to true and AutoEnableStandards to DEFAULT. This automatically + // enables Security Hub and default security standards in new organization accounts. + // These new account settings must be set separately in each Amazon Web Services + // Region, and settings may be different in each Region. + // + // If you use central configuration, the delegated administrator can create + // configuration policies. Configuration policies can be used to configure Security + // Hub, security standards, and security controls in multiple accounts and Regions. + // If you want new organization accounts to use a specific configuration, you + // can create a configuration policy and associate it with the root or specific + // organizational units (OUs). New accounts will inherit the policy from the + // root or their assigned OU. + ConfigurationType *string `type:"string" enum:"OrganizationConfigurationConfigurationType"` + + // Describes whether central configuration could be enabled as the ConfigurationType + // for the organization. If your ConfigurationType is local configuration, then + // the value of Status is always ENABLED. + Status *string `type:"string" enum:"OrganizationConfigurationStatus"` + + // Provides an explanation if the value of Status is equal to FAILED when ConfigurationType + // is equal to CENTRAL. + StatusMessage *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 OrganizationConfiguration) 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 OrganizationConfiguration) GoString() string { + return s.String() +} + +// SetConfigurationType sets the ConfigurationType field's value. +func (s *OrganizationConfiguration) SetConfigurationType(v string) *OrganizationConfiguration { + s.ConfigurationType = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *OrganizationConfiguration) SetStatus(v string) *OrganizationConfiguration { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *OrganizationConfiguration) SetStatusMessage(v string) *OrganizationConfiguration { + s.StatusMessage = &v + return s +} + // An occurrence of sensitive data in an Adobe Portable Document Format (PDF) // file. type Page struct { @@ -54695,6 +57144,60 @@ func (s *PatchSummary) SetRebootOption(v string) *PatchSummary { return s } +// An object that defines how Security Hub is configured. It includes whether +// Security Hub is enabled or disabled, a list of enabled security standards, +// a list of enabled or disabled security controls, and a list of custom parameter +// values for specified controls. If you provide a list of security controls +// that are enabled in the configuration policy, Security Hub disables all other +// controls (including newly released controls). If you provide a list of security +// controls that are disabled in the configuration policy, Security Hub enables +// all other controls (including newly released controls). +type Policy struct { + _ struct{} `type:"structure"` + + // The Amazon Web Service that the configuration policy applies to. + SecurityHub *SecurityHubPolicy `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 Policy) 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 Policy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Policy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Policy"} + if s.SecurityHub != nil { + if err := s.SecurityHub.Validate(); err != nil { + invalidParams.AddNested("SecurityHub", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSecurityHub sets the SecurityHub field's value. +func (s *Policy) SetSecurityHub(v *SecurityHubPolicy) *Policy { + s.SecurityHub = v + return s +} + // Provided if ActionType is PORT_PROBE. It provides details about the attempted // port probe that was detected. type PortProbeAction struct { @@ -55351,6 +57854,12 @@ func (s *Remediation) SetRecommendation(v *Recommendation) *Remediation { type Resource struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the application that is related to a finding. + ApplicationArn *string `type:"string"` + + // The name of the application that is related to a finding. + ApplicationName *string `type:"string"` + // Contains information about sensitive data that was detected on the resource. DataClassification *DataClassificationDetails `type:"structure"` @@ -55428,6 +57937,18 @@ func (s *Resource) Validate() error { return nil } +// SetApplicationArn sets the ApplicationArn field's value. +func (s *Resource) SetApplicationArn(v string) *Resource { + s.ApplicationArn = &v + return s +} + +// SetApplicationName sets the ApplicationName field's value. +func (s *Resource) SetApplicationName(v string) *Resource { + s.ApplicationName = &v + return s +} + // SetDataClassification sets the DataClassification field's value. func (s *Resource) SetDataClassification(v *DataClassificationDetails) *Resource { s.DataClassification = v @@ -57876,6 +60397,69 @@ func (s *SecurityControl) SetUpdateStatus(v string) *SecurityControl { return s } +// A list of security controls and control parameter values that are included +// in a configuration policy. +type SecurityControlCustomParameter struct { + _ struct{} `type:"structure"` + + // An object that specifies parameter values for a control in a configuration + // policy. + Parameters map[string]*ParameterConfiguration `type:"map"` + + // The ID of the security control. + SecurityControlId *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 SecurityControlCustomParameter) 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 SecurityControlCustomParameter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityControlCustomParameter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityControlCustomParameter"} + if s.Parameters != nil { + for i, v := range s.Parameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Parameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetParameters sets the Parameters field's value. +func (s *SecurityControlCustomParameter) SetParameters(v map[string]*ParameterConfiguration) *SecurityControlCustomParameter { + s.Parameters = v + return s +} + +// SetSecurityControlId sets the SecurityControlId field's value. +func (s *SecurityControlCustomParameter) SetSecurityControlId(v string) *SecurityControlCustomParameter { + s.SecurityControlId = &v + return s +} + // Provides metadata for a security control, including its unique standard-agnostic // identifier, title, description, severity, availability in Amazon Web Services // Regions, and a link to remediation steps. @@ -58041,6 +60625,159 @@ func (s *SecurityControlParameter) SetValue(v []*string) *SecurityControlParamet return s } +// An object that defines which security controls are enabled in an Security +// Hub configuration policy. The enablement status of a control is aligned across +// all of the enabled standards in an account. +type SecurityControlsConfiguration struct { + _ struct{} `type:"structure"` + + // A list of security controls that are disabled in the configuration policy. + // Security Hub enables all other controls (including newly released controls) + // other than the listed controls. + DisabledSecurityControlIdentifiers []*string `type:"list"` + + // A list of security controls that are enabled in the configuration policy. + // Security Hub disables all other controls (including newly released controls) + // other than the listed controls. + EnabledSecurityControlIdentifiers []*string `type:"list"` + + // A list of security controls and control parameter values that are included + // in a configuration policy. + SecurityControlCustomParameters []*SecurityControlCustomParameter `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 SecurityControlsConfiguration) 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 SecurityControlsConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityControlsConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityControlsConfiguration"} + if s.SecurityControlCustomParameters != nil { + for i, v := range s.SecurityControlCustomParameters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SecurityControlCustomParameters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDisabledSecurityControlIdentifiers sets the DisabledSecurityControlIdentifiers field's value. +func (s *SecurityControlsConfiguration) SetDisabledSecurityControlIdentifiers(v []*string) *SecurityControlsConfiguration { + s.DisabledSecurityControlIdentifiers = v + return s +} + +// SetEnabledSecurityControlIdentifiers sets the EnabledSecurityControlIdentifiers field's value. +func (s *SecurityControlsConfiguration) SetEnabledSecurityControlIdentifiers(v []*string) *SecurityControlsConfiguration { + s.EnabledSecurityControlIdentifiers = v + return s +} + +// SetSecurityControlCustomParameters sets the SecurityControlCustomParameters field's value. +func (s *SecurityControlsConfiguration) SetSecurityControlCustomParameters(v []*SecurityControlCustomParameter) *SecurityControlsConfiguration { + s.SecurityControlCustomParameters = v + return s +} + +// An object that defines how Security Hub is configured. The configuration +// policy includes whether Security Hub is enabled or disabled, a list of enabled +// security standards, a list of enabled or disabled security controls, and +// a list of custom parameter values for specified controls. If you provide +// a list of security controls that are enabled in the configuration policy, +// Security Hub disables all other controls (including newly released controls). +// If you provide a list of security controls that are disabled in the configuration +// policy, Security Hub enables all other controls (including newly released +// controls). +type SecurityHubPolicy struct { + _ struct{} `type:"structure"` + + // A list that defines which security standards are enabled in the configuration + // policy. + EnabledStandardIdentifiers []*string `type:"list"` + + // An object that defines which security controls are enabled in the configuration + // policy. The enablement status of a control is aligned across all of the enabled + // standards in an account. + SecurityControlsConfiguration *SecurityControlsConfiguration `type:"structure"` + + // Indicates whether Security Hub is enabled in the policy. + ServiceEnabled *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SecurityHubPolicy) 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 SecurityHubPolicy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SecurityHubPolicy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SecurityHubPolicy"} + if s.SecurityControlsConfiguration != nil { + if err := s.SecurityControlsConfiguration.Validate(); err != nil { + invalidParams.AddNested("SecurityControlsConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledStandardIdentifiers sets the EnabledStandardIdentifiers field's value. +func (s *SecurityHubPolicy) SetEnabledStandardIdentifiers(v []*string) *SecurityHubPolicy { + s.EnabledStandardIdentifiers = v + return s +} + +// SetSecurityControlsConfiguration sets the SecurityControlsConfiguration field's value. +func (s *SecurityHubPolicy) SetSecurityControlsConfiguration(v *SecurityControlsConfiguration) *SecurityHubPolicy { + s.SecurityControlsConfiguration = v + return s +} + +// SetServiceEnabled sets the ServiceEnabled field's value. +func (s *SecurityHubPolicy) SetServiceEnabled(v bool) *SecurityHubPolicy { + s.ServiceEnabled = &v + return s +} + // The list of detected instances of sensitive data. type SensitiveDataDetections struct { _ struct{} `type:"structure"` @@ -58926,7 +61663,7 @@ type StandardsControlAssociationSummary struct { // was updated. UpdatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` - // The reason for updating the control's enablement status in a specified standard. + // The reason for updating a control's enablement status in a specified standard. UpdatedReason *string `type:"string"` } @@ -59316,6 +62053,238 @@ func (s *StandardsSubscriptionRequest) SetStandardsInput(v map[string]*string) * return s } +type StartConfigurationPolicyAssociationInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // ConfigurationPolicyIdentifier is a required field + ConfigurationPolicyIdentifier *string `type:"string" required:"true"` + + // The identifier of the target account, organizational unit, or the root to + // associate with the specified configuration. + // + // Target is a required field + Target *Target `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 StartConfigurationPolicyAssociationInput) 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 StartConfigurationPolicyAssociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartConfigurationPolicyAssociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartConfigurationPolicyAssociationInput"} + if s.ConfigurationPolicyIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyIdentifier")) + } + if s.Target == nil { + invalidParams.Add(request.NewErrParamRequired("Target")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyIdentifier sets the ConfigurationPolicyIdentifier field's value. +func (s *StartConfigurationPolicyAssociationInput) SetConfigurationPolicyIdentifier(v string) *StartConfigurationPolicyAssociationInput { + s.ConfigurationPolicyIdentifier = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *StartConfigurationPolicyAssociationInput) SetTarget(v *Target) *StartConfigurationPolicyAssociationInput { + s.Target = v + return s +} + +type StartConfigurationPolicyAssociationOutput struct { + _ struct{} `type:"structure"` + + // The current status of the association between the specified target and the + // configuration. + AssociationStatus *string `type:"string" enum:"ConfigurationPolicyAssociationStatus"` + + // An explanation for a FAILED value for AssociationStatus. + AssociationStatusMessage *string `type:"string"` + + // Indicates whether the association between the specified target and the configuration + // was directly applied by the Security Hub delegated administrator or inherited + // from a parent. + AssociationType *string `type:"string" enum:"AssociationType"` + + // The UUID of the configuration policy. + ConfigurationPolicyId *string `type:"string"` + + // The identifier of the target account, organizational unit, or the organization + // root with which the configuration is associated. + TargetId *string `type:"string"` + + // Indicates whether the target is an Amazon Web Services account, organizational + // unit, or the organization root. + TargetType *string `type:"string" enum:"TargetType"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // association was last updated. + UpdatedAt *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 StartConfigurationPolicyAssociationOutput) 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 StartConfigurationPolicyAssociationOutput) GoString() string { + return s.String() +} + +// SetAssociationStatus sets the AssociationStatus field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationStatus(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationStatus = &v + return s +} + +// SetAssociationStatusMessage sets the AssociationStatusMessage field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationStatusMessage(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationStatusMessage = &v + return s +} + +// SetAssociationType sets the AssociationType field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetAssociationType(v string) *StartConfigurationPolicyAssociationOutput { + s.AssociationType = &v + return s +} + +// SetConfigurationPolicyId sets the ConfigurationPolicyId field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetConfigurationPolicyId(v string) *StartConfigurationPolicyAssociationOutput { + s.ConfigurationPolicyId = &v + return s +} + +// SetTargetId sets the TargetId field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetTargetId(v string) *StartConfigurationPolicyAssociationOutput { + s.TargetId = &v + return s +} + +// SetTargetType sets the TargetType field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetTargetType(v string) *StartConfigurationPolicyAssociationOutput { + s.TargetType = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *StartConfigurationPolicyAssociationOutput) SetUpdatedAt(v time.Time) *StartConfigurationPolicyAssociationOutput { + s.UpdatedAt = &v + return s +} + +type StartConfigurationPolicyDisassociationInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // ConfigurationPolicyIdentifier is a required field + ConfigurationPolicyIdentifier *string `type:"string" required:"true"` + + // The identifier of the target account, organizational unit, or the root to + // disassociate from the specified configuration. + Target *Target `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 StartConfigurationPolicyDisassociationInput) 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 StartConfigurationPolicyDisassociationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartConfigurationPolicyDisassociationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartConfigurationPolicyDisassociationInput"} + if s.ConfigurationPolicyIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ConfigurationPolicyIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicyIdentifier sets the ConfigurationPolicyIdentifier field's value. +func (s *StartConfigurationPolicyDisassociationInput) SetConfigurationPolicyIdentifier(v string) *StartConfigurationPolicyDisassociationInput { + s.ConfigurationPolicyIdentifier = &v + return s +} + +// SetTarget sets the Target field's value. +func (s *StartConfigurationPolicyDisassociationInput) SetTarget(v *Target) *StartConfigurationPolicyDisassociationInput { + s.Target = v + return s +} + +type StartConfigurationPolicyDisassociationOutput 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 StartConfigurationPolicyDisassociationOutput) 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 StartConfigurationPolicyDisassociationOutput) GoString() string { + return s.String() +} + // The definition of a custom action that can be used for stateless packet handling. type StatelessCustomActionDefinition struct { _ struct{} `type:"structure"` @@ -59787,6 +62756,58 @@ func (s TagResourceOutput) GoString() string { return s.String() } +// The target account, organizational unit, or the root that is associated with +// an Security Hub configuration. The configuration can be a configuration policy +// or self-managed behavior. +type Target struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services account ID of the target account. + AccountId *string `type:"string"` + + // The organizational unit ID of the target organizational unit. + OrganizationalUnitId *string `type:"string"` + + // The ID of the organization root. + RootId *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 Target) 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 Target) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *Target) SetAccountId(v string) *Target { + s.AccountId = &v + return s +} + +// SetOrganizationalUnitId sets the OrganizationalUnitId field's value. +func (s *Target) SetOrganizationalUnitId(v string) *Target { + s.OrganizationalUnitId = &v + return s +} + +// SetRootId sets the RootId field's value. +func (s *Target) SetRootId(v string) *Target { + s.RootId = &v + return s +} + // Provides information about the threat detected in a security finding and // the file paths that were affected by the threat. type Threat struct { @@ -59982,6 +63003,60 @@ func (s *UnprocessedAutomationRule) SetRuleArn(v string) *UnprocessedAutomationR return s } +// An array of configuration policy associations, one for each configuration +// policy association identifier, that was specified in a BatchGetConfigurationPolicyAssociations +// request but couldn’t be processed due to an error. +type UnprocessedConfigurationPolicyAssociation struct { + _ struct{} `type:"structure"` + + // Configuration policy association identifiers that were specified in a BatchGetConfigurationPolicyAssociations + // request but couldn’t be processed due to an error. + ConfigurationPolicyAssociationIdentifiers *ConfigurationPolicyAssociation `type:"structure"` + + // An HTTP status code that identifies why the configuration policy association + // failed. + ErrorCode *string `type:"string"` + + // A string that identifies why the configuration policy association failed. + ErrorReason *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 UnprocessedConfigurationPolicyAssociation) 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 UnprocessedConfigurationPolicyAssociation) GoString() string { + return s.String() +} + +// SetConfigurationPolicyAssociationIdentifiers sets the ConfigurationPolicyAssociationIdentifiers field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetConfigurationPolicyAssociationIdentifiers(v *ConfigurationPolicyAssociation) *UnprocessedConfigurationPolicyAssociation { + s.ConfigurationPolicyAssociationIdentifiers = v + return s +} + +// SetErrorCode sets the ErrorCode field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetErrorCode(v string) *UnprocessedConfigurationPolicyAssociation { + s.ErrorCode = &v + return s +} + +// SetErrorReason sets the ErrorReason field's value. +func (s *UnprocessedConfigurationPolicyAssociation) SetErrorReason(v string) *UnprocessedConfigurationPolicyAssociation { + s.ErrorReason = &v + return s +} + // Provides details about a security control for which a response couldn't be // returned. type UnprocessedSecurityControl struct { @@ -60478,6 +63553,202 @@ func (s *UpdateAutomationRulesRequestItem) SetRuleStatus(v string) *UpdateAutoma return s } +type UpdateConfigurationPolicyInput struct { + _ struct{} `type:"structure"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If you provide a list of security controls + // that are enabled in the configuration policy, Security Hub disables all other + // controls (including newly released controls). If you provide a list of security + // controls that are disabled in the configuration policy, Security Hub enables + // all other controls (including newly released controls). + // + // When updating a configuration policy, provide a complete list of standards + // that you want to enable and a complete list of controls that you want to + // enable or disable. The updated configuration replaces the current configuration. + ConfigurationPolicy *Policy `type:"structure"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The Amazon Resource Name (ARN) or universally unique identifier (UUID) of + // the configuration policy. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The reason for updating the configuration policy. + UpdatedReason *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 UpdateConfigurationPolicyInput) 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 UpdateConfigurationPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateConfigurationPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateConfigurationPolicyInput"} + 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.ConfigurationPolicy != nil { + if err := s.ConfigurationPolicy.Validate(); err != nil { + invalidParams.AddNested("ConfigurationPolicy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *UpdateConfigurationPolicyInput) SetConfigurationPolicy(v *Policy) *UpdateConfigurationPolicyInput { + s.ConfigurationPolicy = v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfigurationPolicyInput) SetDescription(v string) *UpdateConfigurationPolicyInput { + s.Description = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateConfigurationPolicyInput) SetIdentifier(v string) *UpdateConfigurationPolicyInput { + s.Identifier = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConfigurationPolicyInput) SetName(v string) *UpdateConfigurationPolicyInput { + s.Name = &v + return s +} + +// SetUpdatedReason sets the UpdatedReason field's value. +func (s *UpdateConfigurationPolicyInput) SetUpdatedReason(v string) *UpdateConfigurationPolicyInput { + s.UpdatedReason = &v + return s +} + +type UpdateConfigurationPolicyOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the configuration policy. + Arn *string `type:"string"` + + // An object that defines how Security Hub is configured. It includes whether + // Security Hub is enabled or disabled, a list of enabled security standards, + // a list of enabled or disabled security controls, and a list of custom parameter + // values for specified controls. If the request included a list of security + // controls that are enabled in the configuration policy, Security Hub disables + // all other controls (including newly released controls). If the request included + // a list of security controls that are disabled in the configuration policy, + // Security Hub enables all other controls (including newly released controls). + ConfigurationPolicy *Policy `type:"structure"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was created. + CreatedAt *time.Time `type:"timestamp" timestampFormat:"iso8601"` + + // The description of the configuration policy. + Description *string `type:"string"` + + // The UUID of the configuration policy. + Id *string `type:"string"` + + // The name of the configuration policy. + Name *string `type:"string"` + + // The date and time, in UTC and ISO 8601 format, that the configuration policy + // was last updated. + UpdatedAt *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 UpdateConfigurationPolicyOutput) 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 UpdateConfigurationPolicyOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *UpdateConfigurationPolicyOutput) SetArn(v string) *UpdateConfigurationPolicyOutput { + s.Arn = &v + return s +} + +// SetConfigurationPolicy sets the ConfigurationPolicy field's value. +func (s *UpdateConfigurationPolicyOutput) SetConfigurationPolicy(v *Policy) *UpdateConfigurationPolicyOutput { + s.ConfigurationPolicy = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *UpdateConfigurationPolicyOutput) SetCreatedAt(v time.Time) *UpdateConfigurationPolicyOutput { + s.CreatedAt = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *UpdateConfigurationPolicyOutput) SetDescription(v string) *UpdateConfigurationPolicyOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateConfigurationPolicyOutput) SetId(v string) *UpdateConfigurationPolicyOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateConfigurationPolicyOutput) SetName(v string) *UpdateConfigurationPolicyOutput { + s.Name = &v + return s +} + +// SetUpdatedAt sets the UpdatedAt field's value. +func (s *UpdateConfigurationPolicyOutput) SetUpdatedAt(v time.Time) *UpdateConfigurationPolicyOutput { + s.UpdatedAt = &v + return s +} + type UpdateFindingAggregatorInput struct { _ struct{} `type:"structure"` @@ -60825,24 +64096,41 @@ func (s UpdateInsightOutput) GoString() string { type UpdateOrganizationConfigurationInput struct { _ struct{} `type:"structure"` - // Whether to automatically enable Security Hub for new accounts in the organization. + // Whether to automatically enable Security Hub in new member accounts when + // they join the organization. // - // By default, this is false, and new accounts are not added automatically. + // If set to true, then Security Hub is automatically enabled in new accounts. + // If set to false, then Security Hub isn't enabled in new accounts automatically. + // The default value is false. // - // To automatically enable Security Hub for new accounts, set this to true. + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to false and can't be changed in the home Region and linked + // Regions. However, in that case, the delegated administrator can create a + // configuration policy in which Security Hub is enabled and associate the policy + // with new organization accounts. // // AutoEnable is a required field AutoEnable *bool `type:"boolean" required:"true"` // Whether to automatically enable Security Hub default standards (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-enable-disable.html) - // for new member accounts in the organization. + // in new member accounts when they join the organization. // - // By default, this parameter is equal to DEFAULT, and new member accounts are - // automatically enabled with default Security Hub standards. + // The default value of this parameter is equal to DEFAULT. // - // To opt out of enabling default standards for new member accounts, set this - // parameter equal to NONE. + // If equal to DEFAULT, then Security Hub default standards are automatically + // enabled for new member accounts. If equal to NONE, then default standards + // are not automatically enabled for new member accounts. + // + // If the ConfigurationType of your organization is set to CENTRAL, then this + // field is set to NONE and can't be changed in the home Region and linked Regions. + // However, in that case, the delegated administrator can create a configuration + // policy in which specific security standards are enabled and associate the + // policy with new organization accounts. AutoEnableStandards *string `type:"string" enum:"AutoEnableStandards"` + + // Provides information about the way an organization is configured in Security + // Hub. + OrganizationConfiguration *OrganizationConfiguration `type:"structure"` } // String returns the string representation. @@ -60888,6 +64176,12 @@ func (s *UpdateOrganizationConfigurationInput) SetAutoEnableStandards(v string) return s } +// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. +func (s *UpdateOrganizationConfigurationInput) SetOrganizationConfiguration(v *OrganizationConfiguration) *UpdateOrganizationConfigurationInput { + s.OrganizationConfiguration = v + return s +} + type UpdateOrganizationConfigurationOutput struct { _ struct{} `type:"structure"` } @@ -61877,6 +65171,22 @@ func AssociationStatus_Values() []string { } } +const ( + // AssociationTypeInherited is a AssociationType enum value + AssociationTypeInherited = "INHERITED" + + // AssociationTypeApplied is a AssociationType enum value + AssociationTypeApplied = "APPLIED" +) + +// AssociationType_Values returns all elements of the AssociationType enum +func AssociationType_Values() []string { + return []string{ + AssociationTypeInherited, + AssociationTypeApplied, + } +} + const ( // AutoEnableStandardsNone is a AutoEnableStandards enum value AutoEnableStandardsNone = "NONE" @@ -61961,6 +65271,26 @@ func ComplianceStatus_Values() []string { } } +const ( + // ConfigurationPolicyAssociationStatusPending is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusPending = "PENDING" + + // ConfigurationPolicyAssociationStatusSuccess is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusSuccess = "SUCCESS" + + // ConfigurationPolicyAssociationStatusFailed is a ConfigurationPolicyAssociationStatus enum value + ConfigurationPolicyAssociationStatusFailed = "FAILED" +) + +// ConfigurationPolicyAssociationStatus_Values returns all elements of the ConfigurationPolicyAssociationStatus enum +func ConfigurationPolicyAssociationStatus_Values() []string { + return []string{ + ConfigurationPolicyAssociationStatusPending, + ConfigurationPolicyAssociationStatusSuccess, + ConfigurationPolicyAssociationStatusFailed, + } +} + const ( // ControlFindingGeneratorStandardControl is a ControlFindingGenerator enum value ControlFindingGeneratorStandardControl = "STANDARD_CONTROL" @@ -62169,6 +65499,42 @@ func NetworkDirection_Values() []string { } } +const ( + // OrganizationConfigurationConfigurationTypeCentral is a OrganizationConfigurationConfigurationType enum value + OrganizationConfigurationConfigurationTypeCentral = "CENTRAL" + + // OrganizationConfigurationConfigurationTypeLocal is a OrganizationConfigurationConfigurationType enum value + OrganizationConfigurationConfigurationTypeLocal = "LOCAL" +) + +// OrganizationConfigurationConfigurationType_Values returns all elements of the OrganizationConfigurationConfigurationType enum +func OrganizationConfigurationConfigurationType_Values() []string { + return []string{ + OrganizationConfigurationConfigurationTypeCentral, + OrganizationConfigurationConfigurationTypeLocal, + } +} + +const ( + // OrganizationConfigurationStatusPending is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusPending = "PENDING" + + // OrganizationConfigurationStatusEnabled is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusEnabled = "ENABLED" + + // OrganizationConfigurationStatusFailed is a OrganizationConfigurationStatus enum value + OrganizationConfigurationStatusFailed = "FAILED" +) + +// OrganizationConfigurationStatus_Values returns all elements of the OrganizationConfigurationStatus enum +func OrganizationConfigurationStatus_Values() []string { + return []string{ + OrganizationConfigurationStatusPending, + OrganizationConfigurationStatusEnabled, + OrganizationConfigurationStatusFailed, + } +} + const ( // ParameterValueTypeDefault is a ParameterValueType enum value ParameterValueTypeDefault = "DEFAULT" @@ -62409,6 +65775,22 @@ func StringFilterComparison_Values() []string { } } +const ( + // TargetTypeAccount is a TargetType enum value + TargetTypeAccount = "ACCOUNT" + + // TargetTypeOrganizationalUnit is a TargetType enum value + TargetTypeOrganizationalUnit = "ORGANIZATIONAL_UNIT" +) + +// TargetType_Values returns all elements of the TargetType enum +func TargetType_Values() []string { + return []string{ + TargetTypeAccount, + TargetTypeOrganizationalUnit, + } +} + const ( // ThreatIntelIndicatorCategoryBackdoor is a ThreatIntelIndicatorCategory enum value ThreatIntelIndicatorCategoryBackdoor = "BACKDOOR" diff --git a/service/securityhub/examples_test.go b/service/securityhub/examples_test.go index fdca33f17e7..4083800ae6a 100644 --- a/service/securityhub/examples_test.go +++ b/service/securityhub/examples_test.go @@ -125,6 +125,8 @@ func ExampleSecurityHub_BatchDisableStandards_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -164,6 +166,8 @@ func ExampleSecurityHub_BatchEnableStandards_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -219,6 +223,56 @@ func ExampleSecurityHub_BatchGetAutomationRules_shared00() { fmt.Println(result) } +// To get configuration associations for a batch of targets +// This operation provides details about configuration associations for a batch of target +// accounts, organizational units, or the root. +func ExampleSecurityHub_BatchGetConfigurationPolicyAssociations_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.BatchGetConfigurationPolicyAssociationsInput{ + ConfigurationPolicyAssociationIdentifiers: []*securityhub.ConfigurationPolicyAssociation{ + { + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + }, + { + Target: &securityhub.Target{ + RootId: aws.String("r-f6g7h8i9j0example"), + }, + }, + }, + } + + result, err := svc.BatchGetConfigurationPolicyAssociations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To get security control details // The following example gets details for the specified controls in the current AWS // account and AWS Region. @@ -515,6 +569,8 @@ func ExampleSecurityHub_BatchUpdateStandardsControlAssociations_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeInvalidInputException: fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -657,6 +713,72 @@ func ExampleSecurityHub_CreateAutomationRule_shared00() { fmt.Println(result) } +// To create a configuration policy +// This operation creates a configuration policy in Security Hub. +func ExampleSecurityHub_CreateConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.CreateConfigurationPolicyInput{ + ConfigurationPolicy: &securityhub.Policy{ + SecurityHub: &securityhub.SecurityHubPolicy{ + EnabledStandardIdentifiers: []*string{ + aws.String("arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"), + aws.String("arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"), + }, + SecurityControlsConfiguration: &securityhub.SecurityControlsConfiguration{ + DisabledSecurityControlIdentifiers: []*string{ + aws.String("CloudWatch.1"), + }, + SecurityControlCustomParameters: []*securityhub.SecurityControlCustomParameter{ + { + Parameters: map[string]*securityhub.ParameterConfiguration{ + "daysToExpiration": { + Value: &securityhub.ParameterValue{ + Integer: aws.Int64(14), + }, + ValueType: aws.String("CUSTOM"), + }, + }, + SecurityControlId: aws.String("ACM.1"), + }, + }, + }, + ServiceEnabled: aws.Bool(true), + }, + }, + Description: aws.String("Configuration policy for testing FSBP and CIS"), + Name: aws.String("TestConfigurationPolicy"), + } + + result, err := svc.CreateConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To enable cross-Region aggregation // The following example creates a finding aggregator. This is required to enable cross-Region // aggregation. @@ -781,6 +903,8 @@ func ExampleSecurityHub_CreateMembers_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceConflictException: fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -869,6 +993,46 @@ func ExampleSecurityHub_DeleteActionTarget_shared00() { fmt.Println(result) } +// To delete a configuration policy +// This operation deletes the specified configuration policy. +func ExampleSecurityHub_DeleteConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.DeleteConfigurationPolicyInput{ + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + } + + result, err := svc.DeleteConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To delete a finding aggregator // The following example deletes a finding aggregator in Security Hub. Deleting the // finding aggregator stops cross-Region aggregation. This operation produces no output. @@ -1102,10 +1266,9 @@ func ExampleSecurityHub_DescribeHub_shared00() { fmt.Println(result) } -// To get information about Organizations configuration -// The following example returns details about the way in which AWS Organizations is -// configured for a Security Hub account that belongs to an organization. Only a Security -// Hub administrator account can call this operation. +// To get information about organization configuration +// This operation provides information about the way your organization is configured +// in Security Hub. Only a Security Hub administrator account can invoke this operation. func ExampleSecurityHub_DescribeOrganizationConfiguration_shared00() { svc := securityhub.New(session.New()) input := &securityhub.DescribeOrganizationConfigurationInput{} @@ -1302,6 +1465,8 @@ func ExampleSecurityHub_DisableOrganizationAdminAccount_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1334,6 +1499,8 @@ func ExampleSecurityHub_DisableSecurityHub_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1409,6 +1576,8 @@ func ExampleSecurityHub_DisassociateMembers_shared00() { fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1481,6 +1650,8 @@ func ExampleSecurityHub_EnableOrganizationAdminAccount_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -1573,6 +1744,85 @@ func ExampleSecurityHub_GetAdministratorAccount_shared00() { fmt.Println(result) } +// To get details about a configuration policy +// This operation provides details about the specified configuration policy. +func ExampleSecurityHub_GetConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.GetConfigurationPolicyInput{ + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + } + + result, err := svc.GetConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To get details about a configuration association +// This operation provides details about configuration associations for a specific target +// account, organizational unit, or the root. +func ExampleSecurityHub_GetConfigurationPolicyAssociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.GetConfigurationPolicyAssociationInput{ + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + } + + result, err := svc.GetConfigurationPolicyAssociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To return a list of enabled standards // The following example returns a list of Security Hub standards that are currently // enabled in your account. @@ -1998,6 +2248,86 @@ func ExampleSecurityHub_ListAutomationRules_shared00() { fmt.Println(result) } +// To view a list of configuration policies +// This operation provides a list of your configuration policies, including metadata +// for each policy. +func ExampleSecurityHub_ListConfigurationPolicies_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.ListConfigurationPoliciesInput{ + MaxResults: aws.Int64(1), + NextToken: aws.String("U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf"), + } + + result, err := svc.ListConfigurationPolicies(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To list configuration associations +// This operation lists all of the associations between targets and configuration policies +// or self-managed behavior. Targets can include accounts, organizational units, or +// the root. +func ExampleSecurityHub_ListConfigurationPolicyAssociations_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.ListConfigurationPolicyAssociationsInput{ + Filters: &securityhub.AssociationFilters{ + AssociationType: aws.String("APPLIED"), + }, + MaxResults: aws.Int64(1), + NextToken: aws.String("U1FsdGVkX19nBV2zoh+Gou9NgnulLJHWpn9xnG4hqSOhvw3o2JqjI86QDxdf"), + } + + result, err := svc.ListConfigurationPolicyAssociations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To list ARNs for enabled integrations // The following example returns a list of subscription Amazon Resource Names (ARNs) // for the product integrations that you have currently enabled in Security Hub. @@ -2269,6 +2599,90 @@ func ExampleSecurityHub_ListTagsForResource_shared00() { fmt.Println(result) } +// To associate a configuration with a target +// This operation associates a configuration policy or self-managed behavior with the +// target account, organizational unit, or the root. +func ExampleSecurityHub_StartConfigurationPolicyAssociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.StartConfigurationPolicyAssociationInput{ + ConfigurationPolicyIdentifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + Target: &securityhub.Target{ + AccountId: aws.String("111122223333"), + }, + } + + result, err := svc.StartConfigurationPolicyAssociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// To disassociate a configuration from a target +// This operation disassociates a configuration policy or self-managed behavior from +// the target account, organizational unit, or the root. +func ExampleSecurityHub_StartConfigurationPolicyDisassociation_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.StartConfigurationPolicyDisassociationInput{ + ConfigurationPolicyIdentifier: aws.String("SELF_MANAGED_SECURITY_HUB"), + Target: &securityhub.Target{ + RootId: aws.String("r-f6g7h8i9j0example"), + }, + } + + result, err := svc.StartConfigurationPolicyDisassociation(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To tag a resource // The following example adds the 'Department' and 'Area' tags to the specified resource. func ExampleSecurityHub_TagResource_shared00() { @@ -2378,6 +2792,77 @@ func ExampleSecurityHub_UpdateActionTarget_shared00() { fmt.Println(result) } +// To update a configuration policy +// This operation updates the specified configuration policy. +func ExampleSecurityHub_UpdateConfigurationPolicy_shared00() { + svc := securityhub.New(session.New()) + input := &securityhub.UpdateConfigurationPolicyInput{ + ConfigurationPolicy: &securityhub.Policy{ + SecurityHub: &securityhub.SecurityHubPolicy{ + EnabledStandardIdentifiers: []*string{ + aws.String("arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"), + aws.String("arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"), + }, + SecurityControlsConfiguration: &securityhub.SecurityControlsConfiguration{ + DisabledSecurityControlIdentifiers: []*string{ + aws.String("CloudWatch.1"), + aws.String("CloudWatch.2"), + }, + SecurityControlCustomParameters: []*securityhub.SecurityControlCustomParameter{ + { + Parameters: map[string]*securityhub.ParameterConfiguration{ + "daysToExpiration": { + Value: &securityhub.ParameterValue{ + Integer: aws.Int64(21), + }, + ValueType: aws.String("CUSTOM"), + }, + }, + SecurityControlId: aws.String("ACM.1"), + }, + }, + }, + ServiceEnabled: aws.Bool(true), + }, + }, + Description: aws.String("Updated configuration policy for testing FSBP and CIS"), + Identifier: aws.String("arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"), + Name: aws.String("TestConfigurationPolicy"), + UpdatedReason: aws.String("Enabling ACM.2"), + } + + result, err := svc.UpdateConfigurationPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case securityhub.ErrCodeInternalException: + fmt.Println(securityhub.ErrCodeInternalException, aerr.Error()) + case securityhub.ErrCodeInvalidAccessException: + fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) + case securityhub.ErrCodeInvalidInputException: + fmt.Println(securityhub.ErrCodeInvalidInputException, aerr.Error()) + case securityhub.ErrCodeLimitExceededException: + fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To update cross-Region aggregation settings // The following example updates the cross-Region aggregation configuration. You use // this operation to change the list of linked Regions and the treatment of new Regions. @@ -2475,13 +2960,16 @@ func ExampleSecurityHub_UpdateInsight_shared00() { } // To update organization configuration -// The following example updates the configuration for an organization so that Security -// Hub is automatically activated for new member accounts. Only the Security Hub administrator -// account can call this operation. +// This operation updates the way your organization is configured in Security Hub. Only +// a Security Hub administrator account can invoke this operation. func ExampleSecurityHub_UpdateOrganizationConfiguration_shared00() { svc := securityhub.New(session.New()) input := &securityhub.UpdateOrganizationConfigurationInput{ - AutoEnable: aws.Bool(true), + AutoEnable: aws.Bool(false), + AutoEnableStandards: aws.String("NONE"), + OrganizationConfiguration: &securityhub.OrganizationConfiguration{ + ConfigurationType: aws.String("CENTRAL"), + }, } result, err := svc.UpdateOrganizationConfiguration(input) @@ -2496,6 +2984,12 @@ func ExampleSecurityHub_UpdateOrganizationConfiguration_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeLimitExceededException: fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) + case securityhub.ErrCodeResourceNotFoundException: + fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeResourceConflictException: + fmt.Println(securityhub.ErrCodeResourceConflictException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2544,6 +3038,8 @@ func ExampleSecurityHub_UpdateSecurityControl_shared00() { fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) case securityhub.ErrCodeResourceInUseException: fmt.Println(securityhub.ErrCodeResourceInUseException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2582,6 +3078,8 @@ func ExampleSecurityHub_UpdateSecurityHubConfiguration_shared00() { fmt.Println(securityhub.ErrCodeLimitExceededException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } @@ -2618,6 +3116,8 @@ func ExampleSecurityHub_UpdateStandardsControl_shared00() { fmt.Println(securityhub.ErrCodeInvalidAccessException, aerr.Error()) case securityhub.ErrCodeResourceNotFoundException: fmt.Println(securityhub.ErrCodeResourceNotFoundException, aerr.Error()) + case securityhub.ErrCodeAccessDeniedException: + fmt.Println(securityhub.ErrCodeAccessDeniedException, aerr.Error()) default: fmt.Println(aerr.Error()) } diff --git a/service/securityhub/securityhubiface/interface.go b/service/securityhub/securityhubiface/interface.go index 31eb5858430..2790122548f 100644 --- a/service/securityhub/securityhubiface/interface.go +++ b/service/securityhub/securityhubiface/interface.go @@ -84,6 +84,10 @@ type SecurityHubAPI interface { BatchGetAutomationRulesWithContext(aws.Context, *securityhub.BatchGetAutomationRulesInput, ...request.Option) (*securityhub.BatchGetAutomationRulesOutput, error) BatchGetAutomationRulesRequest(*securityhub.BatchGetAutomationRulesInput) (*request.Request, *securityhub.BatchGetAutomationRulesOutput) + BatchGetConfigurationPolicyAssociations(*securityhub.BatchGetConfigurationPolicyAssociationsInput) (*securityhub.BatchGetConfigurationPolicyAssociationsOutput, error) + BatchGetConfigurationPolicyAssociationsWithContext(aws.Context, *securityhub.BatchGetConfigurationPolicyAssociationsInput, ...request.Option) (*securityhub.BatchGetConfigurationPolicyAssociationsOutput, error) + BatchGetConfigurationPolicyAssociationsRequest(*securityhub.BatchGetConfigurationPolicyAssociationsInput) (*request.Request, *securityhub.BatchGetConfigurationPolicyAssociationsOutput) + BatchGetSecurityControls(*securityhub.BatchGetSecurityControlsInput) (*securityhub.BatchGetSecurityControlsOutput, error) BatchGetSecurityControlsWithContext(aws.Context, *securityhub.BatchGetSecurityControlsInput, ...request.Option) (*securityhub.BatchGetSecurityControlsOutput, error) BatchGetSecurityControlsRequest(*securityhub.BatchGetSecurityControlsInput) (*request.Request, *securityhub.BatchGetSecurityControlsOutput) @@ -116,6 +120,10 @@ type SecurityHubAPI interface { CreateAutomationRuleWithContext(aws.Context, *securityhub.CreateAutomationRuleInput, ...request.Option) (*securityhub.CreateAutomationRuleOutput, error) CreateAutomationRuleRequest(*securityhub.CreateAutomationRuleInput) (*request.Request, *securityhub.CreateAutomationRuleOutput) + CreateConfigurationPolicy(*securityhub.CreateConfigurationPolicyInput) (*securityhub.CreateConfigurationPolicyOutput, error) + CreateConfigurationPolicyWithContext(aws.Context, *securityhub.CreateConfigurationPolicyInput, ...request.Option) (*securityhub.CreateConfigurationPolicyOutput, error) + CreateConfigurationPolicyRequest(*securityhub.CreateConfigurationPolicyInput) (*request.Request, *securityhub.CreateConfigurationPolicyOutput) + CreateFindingAggregator(*securityhub.CreateFindingAggregatorInput) (*securityhub.CreateFindingAggregatorOutput, error) CreateFindingAggregatorWithContext(aws.Context, *securityhub.CreateFindingAggregatorInput, ...request.Option) (*securityhub.CreateFindingAggregatorOutput, error) CreateFindingAggregatorRequest(*securityhub.CreateFindingAggregatorInput) (*request.Request, *securityhub.CreateFindingAggregatorOutput) @@ -136,6 +144,10 @@ type SecurityHubAPI interface { DeleteActionTargetWithContext(aws.Context, *securityhub.DeleteActionTargetInput, ...request.Option) (*securityhub.DeleteActionTargetOutput, error) DeleteActionTargetRequest(*securityhub.DeleteActionTargetInput) (*request.Request, *securityhub.DeleteActionTargetOutput) + DeleteConfigurationPolicy(*securityhub.DeleteConfigurationPolicyInput) (*securityhub.DeleteConfigurationPolicyOutput, error) + DeleteConfigurationPolicyWithContext(aws.Context, *securityhub.DeleteConfigurationPolicyInput, ...request.Option) (*securityhub.DeleteConfigurationPolicyOutput, error) + DeleteConfigurationPolicyRequest(*securityhub.DeleteConfigurationPolicyInput) (*request.Request, *securityhub.DeleteConfigurationPolicyOutput) + DeleteFindingAggregator(*securityhub.DeleteFindingAggregatorInput) (*securityhub.DeleteFindingAggregatorOutput, error) DeleteFindingAggregatorWithContext(aws.Context, *securityhub.DeleteFindingAggregatorInput, ...request.Option) (*securityhub.DeleteFindingAggregatorOutput, error) DeleteFindingAggregatorRequest(*securityhub.DeleteFindingAggregatorInput) (*request.Request, *securityhub.DeleteFindingAggregatorOutput) @@ -228,6 +240,14 @@ type SecurityHubAPI interface { GetAdministratorAccountWithContext(aws.Context, *securityhub.GetAdministratorAccountInput, ...request.Option) (*securityhub.GetAdministratorAccountOutput, error) GetAdministratorAccountRequest(*securityhub.GetAdministratorAccountInput) (*request.Request, *securityhub.GetAdministratorAccountOutput) + GetConfigurationPolicy(*securityhub.GetConfigurationPolicyInput) (*securityhub.GetConfigurationPolicyOutput, error) + GetConfigurationPolicyWithContext(aws.Context, *securityhub.GetConfigurationPolicyInput, ...request.Option) (*securityhub.GetConfigurationPolicyOutput, error) + GetConfigurationPolicyRequest(*securityhub.GetConfigurationPolicyInput) (*request.Request, *securityhub.GetConfigurationPolicyOutput) + + GetConfigurationPolicyAssociation(*securityhub.GetConfigurationPolicyAssociationInput) (*securityhub.GetConfigurationPolicyAssociationOutput, error) + GetConfigurationPolicyAssociationWithContext(aws.Context, *securityhub.GetConfigurationPolicyAssociationInput, ...request.Option) (*securityhub.GetConfigurationPolicyAssociationOutput, error) + GetConfigurationPolicyAssociationRequest(*securityhub.GetConfigurationPolicyAssociationInput) (*request.Request, *securityhub.GetConfigurationPolicyAssociationOutput) + GetEnabledStandards(*securityhub.GetEnabledStandardsInput) (*securityhub.GetEnabledStandardsOutput, error) GetEnabledStandardsWithContext(aws.Context, *securityhub.GetEnabledStandardsInput, ...request.Option) (*securityhub.GetEnabledStandardsOutput, error) GetEnabledStandardsRequest(*securityhub.GetEnabledStandardsInput) (*request.Request, *securityhub.GetEnabledStandardsOutput) @@ -288,6 +308,20 @@ type SecurityHubAPI interface { ListAutomationRulesWithContext(aws.Context, *securityhub.ListAutomationRulesInput, ...request.Option) (*securityhub.ListAutomationRulesOutput, error) ListAutomationRulesRequest(*securityhub.ListAutomationRulesInput) (*request.Request, *securityhub.ListAutomationRulesOutput) + ListConfigurationPolicies(*securityhub.ListConfigurationPoliciesInput) (*securityhub.ListConfigurationPoliciesOutput, error) + ListConfigurationPoliciesWithContext(aws.Context, *securityhub.ListConfigurationPoliciesInput, ...request.Option) (*securityhub.ListConfigurationPoliciesOutput, error) + ListConfigurationPoliciesRequest(*securityhub.ListConfigurationPoliciesInput) (*request.Request, *securityhub.ListConfigurationPoliciesOutput) + + ListConfigurationPoliciesPages(*securityhub.ListConfigurationPoliciesInput, func(*securityhub.ListConfigurationPoliciesOutput, bool) bool) error + ListConfigurationPoliciesPagesWithContext(aws.Context, *securityhub.ListConfigurationPoliciesInput, func(*securityhub.ListConfigurationPoliciesOutput, bool) bool, ...request.Option) error + + ListConfigurationPolicyAssociations(*securityhub.ListConfigurationPolicyAssociationsInput) (*securityhub.ListConfigurationPolicyAssociationsOutput, error) + ListConfigurationPolicyAssociationsWithContext(aws.Context, *securityhub.ListConfigurationPolicyAssociationsInput, ...request.Option) (*securityhub.ListConfigurationPolicyAssociationsOutput, error) + ListConfigurationPolicyAssociationsRequest(*securityhub.ListConfigurationPolicyAssociationsInput) (*request.Request, *securityhub.ListConfigurationPolicyAssociationsOutput) + + ListConfigurationPolicyAssociationsPages(*securityhub.ListConfigurationPolicyAssociationsInput, func(*securityhub.ListConfigurationPolicyAssociationsOutput, bool) bool) error + ListConfigurationPolicyAssociationsPagesWithContext(aws.Context, *securityhub.ListConfigurationPolicyAssociationsInput, func(*securityhub.ListConfigurationPolicyAssociationsOutput, bool) bool, ...request.Option) error + ListEnabledProductsForImport(*securityhub.ListEnabledProductsForImportInput) (*securityhub.ListEnabledProductsForImportOutput, error) ListEnabledProductsForImportWithContext(aws.Context, *securityhub.ListEnabledProductsForImportInput, ...request.Option) (*securityhub.ListEnabledProductsForImportOutput, error) ListEnabledProductsForImportRequest(*securityhub.ListEnabledProductsForImportInput) (*request.Request, *securityhub.ListEnabledProductsForImportOutput) @@ -341,6 +375,14 @@ type SecurityHubAPI interface { ListTagsForResourceWithContext(aws.Context, *securityhub.ListTagsForResourceInput, ...request.Option) (*securityhub.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*securityhub.ListTagsForResourceInput) (*request.Request, *securityhub.ListTagsForResourceOutput) + StartConfigurationPolicyAssociation(*securityhub.StartConfigurationPolicyAssociationInput) (*securityhub.StartConfigurationPolicyAssociationOutput, error) + StartConfigurationPolicyAssociationWithContext(aws.Context, *securityhub.StartConfigurationPolicyAssociationInput, ...request.Option) (*securityhub.StartConfigurationPolicyAssociationOutput, error) + StartConfigurationPolicyAssociationRequest(*securityhub.StartConfigurationPolicyAssociationInput) (*request.Request, *securityhub.StartConfigurationPolicyAssociationOutput) + + StartConfigurationPolicyDisassociation(*securityhub.StartConfigurationPolicyDisassociationInput) (*securityhub.StartConfigurationPolicyDisassociationOutput, error) + StartConfigurationPolicyDisassociationWithContext(aws.Context, *securityhub.StartConfigurationPolicyDisassociationInput, ...request.Option) (*securityhub.StartConfigurationPolicyDisassociationOutput, error) + StartConfigurationPolicyDisassociationRequest(*securityhub.StartConfigurationPolicyDisassociationInput) (*request.Request, *securityhub.StartConfigurationPolicyDisassociationOutput) + TagResource(*securityhub.TagResourceInput) (*securityhub.TagResourceOutput, error) TagResourceWithContext(aws.Context, *securityhub.TagResourceInput, ...request.Option) (*securityhub.TagResourceOutput, error) TagResourceRequest(*securityhub.TagResourceInput) (*request.Request, *securityhub.TagResourceOutput) @@ -353,6 +395,10 @@ type SecurityHubAPI interface { UpdateActionTargetWithContext(aws.Context, *securityhub.UpdateActionTargetInput, ...request.Option) (*securityhub.UpdateActionTargetOutput, error) UpdateActionTargetRequest(*securityhub.UpdateActionTargetInput) (*request.Request, *securityhub.UpdateActionTargetOutput) + UpdateConfigurationPolicy(*securityhub.UpdateConfigurationPolicyInput) (*securityhub.UpdateConfigurationPolicyOutput, error) + UpdateConfigurationPolicyWithContext(aws.Context, *securityhub.UpdateConfigurationPolicyInput, ...request.Option) (*securityhub.UpdateConfigurationPolicyOutput, error) + UpdateConfigurationPolicyRequest(*securityhub.UpdateConfigurationPolicyInput) (*request.Request, *securityhub.UpdateConfigurationPolicyOutput) + UpdateFindingAggregator(*securityhub.UpdateFindingAggregatorInput) (*securityhub.UpdateFindingAggregatorOutput, error) UpdateFindingAggregatorWithContext(aws.Context, *securityhub.UpdateFindingAggregatorInput, ...request.Option) (*securityhub.UpdateFindingAggregatorOutput, error) UpdateFindingAggregatorRequest(*securityhub.UpdateFindingAggregatorInput) (*request.Request, *securityhub.UpdateFindingAggregatorOutput) diff --git a/service/transcribeservice/api.go b/service/transcribeservice/api.go index 937f0cc4d9f..34d563278b9 100644 --- a/service/transcribeservice/api.go +++ b/service/transcribeservice/api.go @@ -835,6 +835,99 @@ func (c *TranscribeService) DeleteLanguageModelWithContext(ctx aws.Context, inpu return out, req.Send() } +const opDeleteMedicalScribeJob = "DeleteMedicalScribeJob" + +// DeleteMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the DeleteMedicalScribeJob 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 DeleteMedicalScribeJob for more information on using the DeleteMedicalScribeJob +// 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 DeleteMedicalScribeJobRequest method. +// req, resp := client.DeleteMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalScribeJob +func (c *TranscribeService) DeleteMedicalScribeJobRequest(input *DeleteMedicalScribeJobInput) (req *request.Request, output *DeleteMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opDeleteMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteMedicalScribeJobInput{} + } + + output = &DeleteMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Deletes a Medical Scribe job. To use this operation, specify the name of +// the job you want to delete using MedicalScribeJobName. Job names are case +// sensitive. +// +// 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 Transcribe Service's +// API operation DeleteMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/DeleteMedicalScribeJob +func (c *TranscribeService) DeleteMedicalScribeJob(input *DeleteMedicalScribeJobInput) (*DeleteMedicalScribeJobOutput, error) { + req, out := c.DeleteMedicalScribeJobRequest(input) + return out, req.Send() +} + +// DeleteMedicalScribeJobWithContext is the same as DeleteMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteMedicalScribeJob 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 *TranscribeService) DeleteMedicalScribeJobWithContext(ctx aws.Context, input *DeleteMedicalScribeJobInput, opts ...request.Option) (*DeleteMedicalScribeJobOutput, error) { + req, out := c.DeleteMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteMedicalTranscriptionJob = "DeleteMedicalTranscriptionJob" // DeleteMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -1617,6 +1710,108 @@ func (c *TranscribeService) GetCallAnalyticsJobWithContext(ctx aws.Context, inpu return out, req.Send() } +const opGetMedicalScribeJob = "GetMedicalScribeJob" + +// GetMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the GetMedicalScribeJob 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 GetMedicalScribeJob for more information on using the GetMedicalScribeJob +// 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 GetMedicalScribeJobRequest method. +// req, resp := client.GetMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalScribeJob +func (c *TranscribeService) GetMedicalScribeJobRequest(input *GetMedicalScribeJobInput) (req *request.Request, output *GetMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opGetMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetMedicalScribeJobInput{} + } + + output = &GetMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Provides information about the specified Medical Scribe job. +// +// To view the status of the specified medical transcription job, check the +// MedicalScribeJobStatus field. If the status is COMPLETED, the job is finished. +// You can find the results at the location specified in MedicalScribeOutput. +// If the status is FAILED, FailureReason provides details on why your Medical +// Scribe job failed. +// +// To get a list of your Medical Scribe jobs, use the operation. +// +// 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 Transcribe Service's +// API operation GetMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// - NotFoundException +// We can't find the requested resource. Check that the specified name is correct +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/GetMedicalScribeJob +func (c *TranscribeService) GetMedicalScribeJob(input *GetMedicalScribeJobInput) (*GetMedicalScribeJobOutput, error) { + req, out := c.GetMedicalScribeJobRequest(input) + return out, req.Send() +} + +// GetMedicalScribeJobWithContext is the same as GetMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See GetMedicalScribeJob 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 *TranscribeService) GetMedicalScribeJobWithContext(ctx aws.Context, input *GetMedicalScribeJobInput, opts ...request.Option) (*GetMedicalScribeJobOutput, error) { + req, out := c.GetMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetMedicalTranscriptionJob = "GetMedicalTranscriptionJob" // GetMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -2574,34 +2769,34 @@ func (c *TranscribeService) ListLanguageModelsPagesWithContext(ctx aws.Context, return p.Err() } -const opListMedicalTranscriptionJobs = "ListMedicalTranscriptionJobs" +const opListMedicalScribeJobs = "ListMedicalScribeJobs" -// ListMedicalTranscriptionJobsRequest generates a "aws/request.Request" representing the -// client's request for the ListMedicalTranscriptionJobs operation. The "output" return +// ListMedicalScribeJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListMedicalScribeJobs 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 ListMedicalTranscriptionJobs for more information on using the ListMedicalTranscriptionJobs +// See ListMedicalScribeJobs for more information on using the ListMedicalScribeJobs // 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 ListMedicalTranscriptionJobsRequest method. -// req, resp := client.ListMedicalTranscriptionJobsRequest(params) +// // Example sending a request using the ListMedicalScribeJobsRequest method. +// req, resp := client.ListMedicalScribeJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs -func (c *TranscribeService) ListMedicalTranscriptionJobsRequest(input *ListMedicalTranscriptionJobsInput) (req *request.Request, output *ListMedicalTranscriptionJobsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalScribeJobs +func (c *TranscribeService) ListMedicalScribeJobsRequest(input *ListMedicalScribeJobsInput) (req *request.Request, output *ListMedicalScribeJobsOutput) { op := &request.Operation{ - Name: opListMedicalTranscriptionJobs, + Name: opListMedicalScribeJobs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ @@ -2613,28 +2808,28 @@ func (c *TranscribeService) ListMedicalTranscriptionJobsRequest(input *ListMedic } if input == nil { - input = &ListMedicalTranscriptionJobsInput{} + input = &ListMedicalScribeJobsInput{} } - output = &ListMedicalTranscriptionJobsOutput{} + output = &ListMedicalScribeJobsOutput{} req = c.newRequest(op, input, output) return } -// ListMedicalTranscriptionJobs API operation for Amazon Transcribe Service. +// ListMedicalScribeJobs API operation for Amazon Transcribe Service. // -// Provides a list of medical transcription jobs that match the specified criteria. -// If no criteria are specified, all medical transcription jobs are returned. +// Provides a list of Medical Scribe jobs that match the specified criteria. +// If no criteria are specified, all Medical Scribe jobs are returned. // -// To get detailed information about a specific medical transcription job, use -// the operation. +// To get detailed information about a specific Medical Scribe job, use the +// operation. // // 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 Transcribe Service's -// API operation ListMedicalTranscriptionJobs for usage and error information. +// API operation ListMedicalScribeJobs for usage and error information. // // Returned Error Types: // @@ -2652,64 +2847,64 @@ func (c *TranscribeService) ListMedicalTranscriptionJobsRequest(input *ListMedic // There was an internal error. Check the error message, correct the issue, // and try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs -func (c *TranscribeService) ListMedicalTranscriptionJobs(input *ListMedicalTranscriptionJobsInput) (*ListMedicalTranscriptionJobsOutput, error) { - req, out := c.ListMedicalTranscriptionJobsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalScribeJobs +func (c *TranscribeService) ListMedicalScribeJobs(input *ListMedicalScribeJobsInput) (*ListMedicalScribeJobsOutput, error) { + req, out := c.ListMedicalScribeJobsRequest(input) return out, req.Send() } -// ListMedicalTranscriptionJobsWithContext is the same as ListMedicalTranscriptionJobs with the addition of +// ListMedicalScribeJobsWithContext is the same as ListMedicalScribeJobs with the addition of // the ability to pass a context and additional request options. // -// See ListMedicalTranscriptionJobs for details on how to use this API operation. +// See ListMedicalScribeJobs 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 *TranscribeService) ListMedicalTranscriptionJobsWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, opts ...request.Option) (*ListMedicalTranscriptionJobsOutput, error) { - req, out := c.ListMedicalTranscriptionJobsRequest(input) +func (c *TranscribeService) ListMedicalScribeJobsWithContext(ctx aws.Context, input *ListMedicalScribeJobsInput, opts ...request.Option) (*ListMedicalScribeJobsOutput, error) { + req, out := c.ListMedicalScribeJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListMedicalTranscriptionJobsPages iterates over the pages of a ListMedicalTranscriptionJobs operation, +// ListMedicalScribeJobsPages iterates over the pages of a ListMedicalScribeJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListMedicalTranscriptionJobs method for more information on how to use this operation. +// See ListMedicalScribeJobs 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 ListMedicalTranscriptionJobs operation. +// // Example iterating over at most 3 pages of a ListMedicalScribeJobs operation. // pageNum := 0 -// err := client.ListMedicalTranscriptionJobsPages(params, -// func(page *transcribeservice.ListMedicalTranscriptionJobsOutput, lastPage bool) bool { +// err := client.ListMedicalScribeJobsPages(params, +// func(page *transcribeservice.ListMedicalScribeJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *TranscribeService) ListMedicalTranscriptionJobsPages(input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool) error { - return c.ListMedicalTranscriptionJobsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *TranscribeService) ListMedicalScribeJobsPages(input *ListMedicalScribeJobsInput, fn func(*ListMedicalScribeJobsOutput, bool) bool) error { + return c.ListMedicalScribeJobsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListMedicalTranscriptionJobsPagesWithContext same as ListMedicalTranscriptionJobsPages except +// ListMedicalScribeJobsPagesWithContext same as ListMedicalScribeJobsPages 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 *TranscribeService) ListMedicalTranscriptionJobsPagesWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool, opts ...request.Option) error { +func (c *TranscribeService) ListMedicalScribeJobsPagesWithContext(ctx aws.Context, input *ListMedicalScribeJobsInput, fn func(*ListMedicalScribeJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListMedicalTranscriptionJobsInput + var inCpy *ListMedicalScribeJobsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListMedicalTranscriptionJobsRequest(inCpy) + req, _ := c.ListMedicalScribeJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2717,7 +2912,7 @@ func (c *TranscribeService) ListMedicalTranscriptionJobsPagesWithContext(ctx aws } for p.Next() { - if !fn(p.Page().(*ListMedicalTranscriptionJobsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListMedicalScribeJobsOutput), !p.HasNextPage()) { break } } @@ -2725,34 +2920,34 @@ func (c *TranscribeService) ListMedicalTranscriptionJobsPagesWithContext(ctx aws return p.Err() } -const opListMedicalVocabularies = "ListMedicalVocabularies" +const opListMedicalTranscriptionJobs = "ListMedicalTranscriptionJobs" -// ListMedicalVocabulariesRequest generates a "aws/request.Request" representing the -// client's request for the ListMedicalVocabularies operation. The "output" return +// ListMedicalTranscriptionJobsRequest generates a "aws/request.Request" representing the +// client's request for the ListMedicalTranscriptionJobs 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 ListMedicalVocabularies for more information on using the ListMedicalVocabularies +// See ListMedicalTranscriptionJobs for more information on using the ListMedicalTranscriptionJobs // 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 ListMedicalVocabulariesRequest method. -// req, resp := client.ListMedicalVocabulariesRequest(params) +// // Example sending a request using the ListMedicalTranscriptionJobsRequest method. +// req, resp := client.ListMedicalTranscriptionJobsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies -func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVocabulariesInput) (req *request.Request, output *ListMedicalVocabulariesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs +func (c *TranscribeService) ListMedicalTranscriptionJobsRequest(input *ListMedicalTranscriptionJobsInput) (req *request.Request, output *ListMedicalTranscriptionJobsOutput) { op := &request.Operation{ - Name: opListMedicalVocabularies, + Name: opListMedicalTranscriptionJobs, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ @@ -2764,20 +2959,20 @@ func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVoc } if input == nil { - input = &ListMedicalVocabulariesInput{} + input = &ListMedicalTranscriptionJobsInput{} } - output = &ListMedicalVocabulariesOutput{} + output = &ListMedicalTranscriptionJobsOutput{} req = c.newRequest(op, input, output) return } -// ListMedicalVocabularies API operation for Amazon Transcribe Service. +// ListMedicalTranscriptionJobs API operation for Amazon Transcribe Service. // -// Provides a list of custom medical vocabularies that match the specified criteria. -// If no criteria are specified, all custom medical vocabularies are returned. +// Provides a list of medical transcription jobs that match the specified criteria. +// If no criteria are specified, all medical transcription jobs are returned. // -// To get detailed information about a specific custom medical vocabulary, use +// To get detailed information about a specific medical transcription job, use // the operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2785,7 +2980,7 @@ func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVoc // the error. // // See the AWS API reference guide for Amazon Transcribe Service's -// API operation ListMedicalVocabularies for usage and error information. +// API operation ListMedicalTranscriptionJobs for usage and error information. // // Returned Error Types: // @@ -2803,64 +2998,64 @@ func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVoc // There was an internal error. Check the error message, correct the issue, // and try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies -func (c *TranscribeService) ListMedicalVocabularies(input *ListMedicalVocabulariesInput) (*ListMedicalVocabulariesOutput, error) { - req, out := c.ListMedicalVocabulariesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalTranscriptionJobs +func (c *TranscribeService) ListMedicalTranscriptionJobs(input *ListMedicalTranscriptionJobsInput) (*ListMedicalTranscriptionJobsOutput, error) { + req, out := c.ListMedicalTranscriptionJobsRequest(input) return out, req.Send() } -// ListMedicalVocabulariesWithContext is the same as ListMedicalVocabularies with the addition of +// ListMedicalTranscriptionJobsWithContext is the same as ListMedicalTranscriptionJobs with the addition of // the ability to pass a context and additional request options. // -// See ListMedicalVocabularies for details on how to use this API operation. +// See ListMedicalTranscriptionJobs 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 *TranscribeService) ListMedicalVocabulariesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, opts ...request.Option) (*ListMedicalVocabulariesOutput, error) { - req, out := c.ListMedicalVocabulariesRequest(input) +func (c *TranscribeService) ListMedicalTranscriptionJobsWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, opts ...request.Option) (*ListMedicalTranscriptionJobsOutput, error) { + req, out := c.ListMedicalTranscriptionJobsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListMedicalVocabulariesPages iterates over the pages of a ListMedicalVocabularies operation, +// ListMedicalTranscriptionJobsPages iterates over the pages of a ListMedicalTranscriptionJobs operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListMedicalVocabularies method for more information on how to use this operation. +// See ListMedicalTranscriptionJobs 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 ListMedicalVocabularies operation. +// // Example iterating over at most 3 pages of a ListMedicalTranscriptionJobs operation. // pageNum := 0 -// err := client.ListMedicalVocabulariesPages(params, -// func(page *transcribeservice.ListMedicalVocabulariesOutput, lastPage bool) bool { +// err := client.ListMedicalTranscriptionJobsPages(params, +// func(page *transcribeservice.ListMedicalTranscriptionJobsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *TranscribeService) ListMedicalVocabulariesPages(input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool) error { - return c.ListMedicalVocabulariesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *TranscribeService) ListMedicalTranscriptionJobsPages(input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool) error { + return c.ListMedicalTranscriptionJobsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListMedicalVocabulariesPagesWithContext same as ListMedicalVocabulariesPages except +// ListMedicalTranscriptionJobsPagesWithContext same as ListMedicalTranscriptionJobsPages 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 *TranscribeService) ListMedicalVocabulariesPagesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool, opts ...request.Option) error { +func (c *TranscribeService) ListMedicalTranscriptionJobsPagesWithContext(ctx aws.Context, input *ListMedicalTranscriptionJobsInput, fn func(*ListMedicalTranscriptionJobsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListMedicalVocabulariesInput + var inCpy *ListMedicalTranscriptionJobsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListMedicalVocabulariesRequest(inCpy) + req, _ := c.ListMedicalTranscriptionJobsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -2868,7 +3063,7 @@ func (c *TranscribeService) ListMedicalVocabulariesPagesWithContext(ctx aws.Cont } for p.Next() { - if !fn(p.Page().(*ListMedicalVocabulariesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListMedicalTranscriptionJobsOutput), !p.HasNextPage()) { break } } @@ -2876,7 +3071,158 @@ func (c *TranscribeService) ListMedicalVocabulariesPagesWithContext(ctx aws.Cont return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListMedicalVocabularies = "ListMedicalVocabularies" + +// ListMedicalVocabulariesRequest generates a "aws/request.Request" representing the +// client's request for the ListMedicalVocabularies 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 ListMedicalVocabularies for more information on using the ListMedicalVocabularies +// 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 ListMedicalVocabulariesRequest method. +// req, resp := client.ListMedicalVocabulariesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies +func (c *TranscribeService) ListMedicalVocabulariesRequest(input *ListMedicalVocabulariesInput) (req *request.Request, output *ListMedicalVocabulariesOutput) { + op := &request.Operation{ + Name: opListMedicalVocabularies, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListMedicalVocabulariesInput{} + } + + output = &ListMedicalVocabulariesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListMedicalVocabularies API operation for Amazon Transcribe Service. +// +// Provides a list of custom medical vocabularies that match the specified criteria. +// If no criteria are specified, all custom medical vocabularies are returned. +// +// To get detailed information about a specific custom medical vocabulary, use +// the operation. +// +// 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 Transcribe Service's +// API operation ListMedicalVocabularies for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/ListMedicalVocabularies +func (c *TranscribeService) ListMedicalVocabularies(input *ListMedicalVocabulariesInput) (*ListMedicalVocabulariesOutput, error) { + req, out := c.ListMedicalVocabulariesRequest(input) + return out, req.Send() +} + +// ListMedicalVocabulariesWithContext is the same as ListMedicalVocabularies with the addition of +// the ability to pass a context and additional request options. +// +// See ListMedicalVocabularies 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 *TranscribeService) ListMedicalVocabulariesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, opts ...request.Option) (*ListMedicalVocabulariesOutput, error) { + req, out := c.ListMedicalVocabulariesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListMedicalVocabulariesPages iterates over the pages of a ListMedicalVocabularies operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListMedicalVocabularies 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 ListMedicalVocabularies operation. +// pageNum := 0 +// err := client.ListMedicalVocabulariesPages(params, +// func(page *transcribeservice.ListMedicalVocabulariesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TranscribeService) ListMedicalVocabulariesPages(input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool) error { + return c.ListMedicalVocabulariesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListMedicalVocabulariesPagesWithContext same as ListMedicalVocabulariesPages 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 *TranscribeService) ListMedicalVocabulariesPagesWithContext(ctx aws.Context, input *ListMedicalVocabulariesInput, fn func(*ListMedicalVocabulariesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListMedicalVocabulariesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListMedicalVocabulariesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListMedicalVocabulariesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" // ListTagsForResourceRequest generates a "aws/request.Request" representing the // client's request for the ListTagsForResource operation. The "output" return @@ -3562,6 +3908,135 @@ func (c *TranscribeService) StartCallAnalyticsJobWithContext(ctx aws.Context, in return out, req.Send() } +const opStartMedicalScribeJob = "StartMedicalScribeJob" + +// StartMedicalScribeJobRequest generates a "aws/request.Request" representing the +// client's request for the StartMedicalScribeJob 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 StartMedicalScribeJob for more information on using the StartMedicalScribeJob +// 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 StartMedicalScribeJobRequest method. +// req, resp := client.StartMedicalScribeJobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalScribeJob +func (c *TranscribeService) StartMedicalScribeJobRequest(input *StartMedicalScribeJobInput) (req *request.Request, output *StartMedicalScribeJobOutput) { + op := &request.Operation{ + Name: opStartMedicalScribeJob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &StartMedicalScribeJobInput{} + } + + output = &StartMedicalScribeJobOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartMedicalScribeJob API operation for Amazon Transcribe Service. +// +// Transcribes patient-clinician conversations and generates clinical notes. +// +// Amazon Web Services HealthScribe automatically provides rich conversation +// transcripts, identifies speaker roles, classifies dialogues, extracts medical +// terms, and generates preliminary clinical notes. To learn more about these +// features, refer to Amazon Web Services HealthScribe (https://docs.aws.amazon.com/transcribe/latest/dg/health-scribe.html). +// +// To make a StartMedicalScribeJob request, you must first upload your media +// file into an Amazon S3 bucket; you can then specify the Amazon S3 location +// of the file using the Media parameter. +// +// You must include the following parameters in your StartMedicalTranscriptionJob +// request: +// +// - DataAccessRoleArn: The ARN of an IAM role with the these minimum permissions: +// read permission on input file Amazon S3 bucket specified in Media, write +// permission on the Amazon S3 bucket specified in OutputBucketName, and +// full permissions on the KMS key specified in OutputEncryptionKMSKeyId +// (if set). The role should also allow transcribe.amazonaws.com to assume +// it. +// +// - Media (MediaFileUri): The Amazon S3 location of your media file. +// +// - MedicalScribeJobName: A custom name you create for your MedicalScribe +// job that is unique within your Amazon Web Services account. +// +// - OutputBucketName: The Amazon S3 bucket where you want your output files +// stored. +// +// - Settings: A MedicalScribeSettings obect that must set exactly one of +// ShowSpeakerLabels or ChannelIdentification to true. If ShowSpeakerLabels +// is true, MaxSpeakerLabels must also be set. +// +// - ChannelDefinitions: A MedicalScribeChannelDefinitions array should be +// set if and only if the ChannelIdentification value of Settings is set +// to true. +// +// 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 Transcribe Service's +// API operation StartMedicalScribeJob for usage and error information. +// +// Returned Error Types: +// +// - BadRequestException +// Your request didn't pass one or more validation tests. This can occur when +// the entity you're trying to delete doesn't exist or if it's in a non-terminal +// state (such as IN PROGRESS). See the exception message field for more information. +// +// - LimitExceededException +// You've either sent too many requests or your input file is too long. Wait +// before retrying your request, or use a smaller file and try your request +// again. +// +// - InternalFailureException +// There was an internal error. Check the error message, correct the issue, +// and try your request again. +// +// - ConflictException +// A resource already exists with this name. Resource names must be unique within +// an Amazon Web Services account. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/transcribe-2017-10-26/StartMedicalScribeJob +func (c *TranscribeService) StartMedicalScribeJob(input *StartMedicalScribeJobInput) (*StartMedicalScribeJobOutput, error) { + req, out := c.StartMedicalScribeJobRequest(input) + return out, req.Send() +} + +// StartMedicalScribeJobWithContext is the same as StartMedicalScribeJob with the addition of +// the ability to pass a context and additional request options. +// +// See StartMedicalScribeJob 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 *TranscribeService) StartMedicalScribeJobWithContext(ctx aws.Context, input *StartMedicalScribeJobInput, opts ...request.Option) (*StartMedicalScribeJobOutput, error) { + req, out := c.StartMedicalScribeJobRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartMedicalTranscriptionJob = "StartMedicalTranscriptionJob" // StartMedicalTranscriptionJobRequest generates a "aws/request.Request" representing the @@ -3614,7 +4089,7 @@ func (c *TranscribeService) StartMedicalTranscriptionJobRequest(input *StartMedi // these features, refer to How Amazon Transcribe Medical works (https://docs.aws.amazon.com/transcribe/latest/dg/how-it-works-med.html). // // To make a StartMedicalTranscriptionJob request, you must first upload your -// media file into an Amazon S3 bucket; you can then specify the S3 location +// media file into an Amazon S3 bucket; you can then specify the Amazon S3 location // of the file using the Media parameter. // // You must include the following parameters in your StartMedicalTranscriptionJob @@ -3753,7 +4228,7 @@ func (c *TranscribeService) StartTranscriptionJobRequest(input *StartTranscripti // If you know the language of your media file, specify it using the LanguageCode // parameter; you can find all valid language codes in the Supported languages // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) -// table. If you don't know the languages spoken in your media, use either +// table. If you do not know the languages spoken in your media, use either // IdentifyLanguage or IdentifyMultipleLanguages and let Amazon Transcribe // identify the languages for you. // @@ -4612,7 +5087,8 @@ type CallAnalyticsJob struct { // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -4629,11 +5105,11 @@ type CallAnalyticsJob struct { // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The confidence score associated with the language identified in your media @@ -4649,7 +5125,7 @@ type CallAnalyticsJob struct { // (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) // table. // - // If you don't know the language spoken in your media file, you can omit this + // If you do not know the language spoken in your media file, you can omit this // field and let Amazon Transcribe automatically identify the language of your // media. To improve the accuracy of language identification, you can include // several language codes and Amazon Transcribe chooses the closest match for @@ -4798,7 +5274,8 @@ type CallAnalyticsJobSettings struct { // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include - // the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. + // the sub-parameters: RedactionOutput and RedactionType. You can optionally + // include PiiEntityTypes to choose which types of PII you want to redact. ContentRedaction *ContentRedaction `type:"structure"` // If using automatic language identification in your request and you want to @@ -4833,9 +5310,9 @@ type CallAnalyticsJobSettings struct { // Call Analytics job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` // You can specify two or more language codes that represent the languages you @@ -5286,13 +5763,15 @@ func (s *ConflictException) RequestID() string { // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include -// the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. +// the sub-parameters: RedactionOutput and RedactionType. You can optionally +// include PiiEntityTypes to choose which types of PII you want to redact. type ContentRedaction struct { _ struct{} `type:"structure"` // Specify which types of personally identifiable information (PII) you want // to redact in your transcript. You can include as many types as you'd like, - // or you can select ALL. + // or you can select ALL. If you do not include PiiEntityTypes in your request, + // all PII is redacted. PiiEntityTypes []*string `type:"list" enum:"PiiEntityType"` // Specify if you want only a redacted transcript, or if you want a redacted @@ -5308,7 +5787,8 @@ type ContentRedaction struct { // Specify the category of information you want to redact; PII (personally identifiable // information) is the only valid value. You can use PiiEntityTypes to choose - // which types of PII you want to redact. + // which types of PII you want to redact. If you do not include PiiEntityTypes + // in your request, all PII is redacted. // // RedactionType is a required field RedactionType *string `type:"string" required:"true" enum:"RedactionType"` @@ -6589,14 +7069,14 @@ func (s DeleteLanguageModelOutput) GoString() string { return s.String() } -type DeleteMedicalTranscriptionJobInput struct { +type DeleteMedicalScribeJobInput struct { _ struct{} `type:"structure"` - // The name of the medical transcription job you want to delete. Job names are - // case sensitive. + // The name of the Medical Scribe job you want to delete. Job names are case + // sensitive. // - // MedicalTranscriptionJobName is a required field - MedicalTranscriptionJobName *string `min:"1" type:"string" required:"true"` + // MedicalScribeJobName is a required field + MedicalScribeJobName *string `min:"1" type:"string" required:"true"` } // String returns the string representation. @@ -6604,7 +7084,7 @@ type DeleteMedicalTranscriptionJobInput 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 DeleteMedicalTranscriptionJobInput) String() string { +func (s DeleteMedicalScribeJobInput) String() string { return awsutil.Prettify(s) } @@ -6613,18 +7093,18 @@ func (s DeleteMedicalTranscriptionJobInput) 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 DeleteMedicalTranscriptionJobInput) GoString() string { +func (s DeleteMedicalScribeJobInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteMedicalTranscriptionJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalTranscriptionJobInput"} - if s.MedicalTranscriptionJobName == nil { - invalidParams.Add(request.NewErrParamRequired("MedicalTranscriptionJobName")) +func (s *DeleteMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalScribeJobInput"} + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) } - if s.MedicalTranscriptionJobName != nil && len(*s.MedicalTranscriptionJobName) < 1 { - invalidParams.Add(request.NewErrParamMinLen("MedicalTranscriptionJobName", 1)) + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) } if invalidParams.Len() > 0 { @@ -6633,8 +7113,80 @@ func (s *DeleteMedicalTranscriptionJobInput) Validate() error { return nil } -// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value. -func (s *DeleteMedicalTranscriptionJobInput) SetMedicalTranscriptionJobName(v string) *DeleteMedicalTranscriptionJobInput { +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *DeleteMedicalScribeJobInput) SetMedicalScribeJobName(v string) *DeleteMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +type DeleteMedicalScribeJobOutput 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 DeleteMedicalScribeJobOutput) 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 DeleteMedicalScribeJobOutput) GoString() string { + return s.String() +} + +type DeleteMedicalTranscriptionJobInput struct { + _ struct{} `type:"structure"` + + // The name of the medical transcription job you want to delete. Job names are + // case sensitive. + // + // MedicalTranscriptionJobName is a required field + MedicalTranscriptionJobName *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 DeleteMedicalTranscriptionJobInput) 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 DeleteMedicalTranscriptionJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteMedicalTranscriptionJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteMedicalTranscriptionJobInput"} + if s.MedicalTranscriptionJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalTranscriptionJobName")) + } + if s.MedicalTranscriptionJobName != nil && len(*s.MedicalTranscriptionJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalTranscriptionJobName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMedicalTranscriptionJobName sets the MedicalTranscriptionJobName field's value. +func (s *DeleteMedicalTranscriptionJobInput) SetMedicalTranscriptionJobName(v string) *DeleteMedicalTranscriptionJobInput { s.MedicalTranscriptionJobName = &v return s } @@ -7203,6 +7755,88 @@ func (s *GetCallAnalyticsJobOutput) SetCallAnalyticsJob(v *CallAnalyticsJob) *Ge return s } +type GetMedicalScribeJobInput struct { + _ struct{} `type:"structure"` + + // The name of the Medical Scribe job you want information about. Job names + // are case sensitive. + // + // MedicalScribeJobName is a required field + MedicalScribeJobName *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 GetMedicalScribeJobInput) 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 GetMedicalScribeJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetMedicalScribeJobInput"} + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) + } + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *GetMedicalScribeJobInput) SetMedicalScribeJobName(v string) *GetMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +type GetMedicalScribeJobOutput struct { + _ struct{} `type:"structure"` + + // Provides detailed information about the specified Medical Scribe job, including + // job status and, if applicable, failure reason + MedicalScribeJob *MedicalScribeJob `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 GetMedicalScribeJobOutput) 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 GetMedicalScribeJobOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJob sets the MedicalScribeJob field's value. +func (s *GetMedicalScribeJobOutput) SetMedicalScribeJob(v *MedicalScribeJob) *GetMedicalScribeJobOutput { + s.MedicalScribeJob = v + return s +} + type GetMedicalTranscriptionJobInput struct { _ struct{} `type:"structure"` @@ -7338,7 +7972,7 @@ func (s *GetMedicalVocabularyInput) SetVocabularyName(v string) *GetMedicalVocab type GetMedicalVocabularyOutput struct { _ struct{} `type:"structure"` - // The S3 location where the specified custom medical vocabulary is stored; + // The Amazon S3 location where the specified custom medical vocabulary is stored; // use this URI to view or download the custom vocabulary. DownloadUri *string `min:"1" type:"string"` @@ -7665,8 +8299,8 @@ func (s *GetVocabularyInput) SetVocabularyName(v string) *GetVocabularyInput { type GetVocabularyOutput struct { _ struct{} `type:"structure"` - // The S3 location where the custom vocabulary is stored; use this URI to view - // or download the custom vocabulary. + // The Amazon S3 location where the custom vocabulary is stored; use this URI + // to view or download the custom vocabulary. DownloadUri *string `min:"1" type:"string"` // If VocabularyState is FAILED, FailureReason contains information about why @@ -8148,18 +8782,18 @@ type LanguageIdSettings struct { // transcription job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` // The name of the custom vocabulary filter you want to use when processing // your transcription job. Custom vocabulary filter names are case sensitive. // // The language of the specified custom vocabulary filter must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom vocabulary filter isn't applied. There are no errors or - // warnings associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom vocabulary filter isn't applied. There are no errors + // or warnings associated with a language mismatch. // // Note that if you include VocabularyFilterName in your request, you must also // include VocabularyFilterMethod. @@ -8169,7 +8803,7 @@ type LanguageIdSettings struct { // job. Custom vocabulary names are case sensitive. // // The language of the specified custom vocabulary must match the language code - // that you specify in your transcription request. If the languages don't match, + // that you specify in your transcription request. If the languages do not match, // the custom vocabulary isn't applied. There are no errors or warnings associated // with a language mismatch. VocabularyName *string `min:"1" type:"string"` @@ -8276,8 +8910,8 @@ type LanguageModel struct { // // For a list of supported languages and their associated language codes, refer // to the Supported languages (https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html) - // table. Note that U.S. English (en-US) is the only language supported with - // Amazon Transcribe Medical. + // table. Note that US English (en-US) is the only language supported with Amazon + // Transcribe Medical. LanguageCode *string `type:"string" enum:"CLMLanguageCode"` // The date and time the specified custom language model was last modified. @@ -8453,7 +9087,7 @@ type ListCallAnalyticsCategoriesInput struct { // The maximum number of Call Analytics categories to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8562,7 +9196,7 @@ type ListCallAnalyticsJobsInput struct { // The maximum number of Call Analytics jobs to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // If your ListCallAnalyticsJobs request returns more results than can be displayed, @@ -8573,7 +9207,7 @@ type ListCallAnalyticsJobsInput struct { NextToken *string `type:"string"` // Returns only Call Analytics jobs with the specified status. Jobs are ordered - // by creation date, with the newest job first. If you don't include Status, + // by creation date, with the newest job first. If you do not include Status, // all Call Analytics jobs are returned. Status *string `type:"string" enum:"CallAnalyticsJobStatus"` } @@ -8695,7 +9329,7 @@ type ListLanguageModelsInput struct { // The maximum number of custom language models to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // Returns only the custom language models that contain the specified string. @@ -8710,8 +9344,8 @@ type ListLanguageModelsInput struct { NextToken *string `type:"string"` // Returns only custom language models with the specified status. Language models - // are ordered by creation date, with the newest model first. If you don't include - // StatusEquals, all custom language models are returned. + // are ordered by creation date, with the newest model first. If you do not + // include StatusEquals, all custom language models are returned. StatusEquals *string `type:"string" enum:"ModelStatus"` } @@ -8818,6 +9452,143 @@ func (s *ListLanguageModelsOutput) SetNextToken(v string) *ListLanguageModelsOut return s } +type ListMedicalScribeJobsInput struct { + _ struct{} `type:"structure"` + + // Returns only the Medical Scribe jobs that contain the specified string. The + // search is not case sensitive. + JobNameContains *string `min:"1" type:"string"` + + // The maximum number of Medical Scribe jobs to return in each page of results. + // If there are fewer results than the value that you specify, only the actual + // results are returned. If you do not specify a value, a default of 5 is used. + MaxResults *int64 `min:"1" type:"integer"` + + // If your ListMedicalScribeJobs request returns more results than can be displayed, + // NextToken is displayed in the response with an associated string. To get + // the next page of results, copy this string and repeat your request, including + // NextToken with the value of the copied string. Repeat as needed to view all + // your results. + NextToken *string `type:"string"` + + // Returns only Medical Scribe jobs with the specified status. Jobs are ordered + // by creation date, with the newest job first. If you do not include Status, + // all Medical Scribe jobs are returned. + Status *string `type:"string" enum:"MedicalScribeJobStatus"` +} + +// 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 ListMedicalScribeJobsInput) 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 ListMedicalScribeJobsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListMedicalScribeJobsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListMedicalScribeJobsInput"} + if s.JobNameContains != nil && len(*s.JobNameContains) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobNameContains", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobNameContains sets the JobNameContains field's value. +func (s *ListMedicalScribeJobsInput) SetJobNameContains(v string) *ListMedicalScribeJobsInput { + s.JobNameContains = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListMedicalScribeJobsInput) SetMaxResults(v int64) *ListMedicalScribeJobsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMedicalScribeJobsInput) SetNextToken(v string) *ListMedicalScribeJobsInput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListMedicalScribeJobsInput) SetStatus(v string) *ListMedicalScribeJobsInput { + s.Status = &v + return s +} + +type ListMedicalScribeJobsOutput struct { + _ struct{} `type:"structure"` + + // Provides a summary of information about each result. + MedicalScribeJobSummaries []*MedicalScribeJobSummary `type:"list"` + + // If NextToken is present in your response, it indicates that not all results + // are displayed. To view the next set of results, copy the string associated + // with the NextToken parameter in your results output, then run your request + // again including NextToken with the value of the copied string. Repeat as + // needed to view all your results. + NextToken *string `type:"string"` + + // Lists all Medical Scribe jobs that have the status specified in your request. + // Jobs are ordered by creation date, with the newest job first. + Status *string `type:"string" enum:"MedicalScribeJobStatus"` +} + +// 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 ListMedicalScribeJobsOutput) 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 ListMedicalScribeJobsOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJobSummaries sets the MedicalScribeJobSummaries field's value. +func (s *ListMedicalScribeJobsOutput) SetMedicalScribeJobSummaries(v []*MedicalScribeJobSummary) *ListMedicalScribeJobsOutput { + s.MedicalScribeJobSummaries = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListMedicalScribeJobsOutput) SetNextToken(v string) *ListMedicalScribeJobsOutput { + s.NextToken = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ListMedicalScribeJobsOutput) SetStatus(v string) *ListMedicalScribeJobsOutput { + s.Status = &v + return s +} + type ListMedicalTranscriptionJobsInput struct { _ struct{} `type:"structure"` @@ -8827,7 +9598,7 @@ type ListMedicalTranscriptionJobsInput struct { // The maximum number of medical transcription jobs to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8839,7 +9610,7 @@ type ListMedicalTranscriptionJobsInput struct { NextToken *string `type:"string"` // Returns only medical transcription jobs with the specified status. Jobs are - // ordered by creation date, with the newest job first. If you don't include + // ordered by creation date, with the newest job first. If you do not include // Status, all medical transcription jobs are returned. Status *string `type:"string" enum:"TranscriptionJobStatus"` } @@ -8961,7 +9732,7 @@ type ListMedicalVocabulariesInput struct { // The maximum number of custom medical vocabularies to return in each page // of results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -8978,7 +9749,7 @@ type ListMedicalVocabulariesInput struct { // Returns only custom medical vocabularies with the specified state. Custom // vocabularies are ordered by creation date, with the newest vocabulary first. - // If you don't include StateEquals, all custom medical vocabularies are returned. + // If you do not include StateEquals, all custom medical vocabularies are returned. StateEquals *string `type:"string" enum:"VocabularyState"` } @@ -9201,7 +9972,7 @@ type ListTranscriptionJobsInput struct { // The maximum number of transcription jobs to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // If your ListTranscriptionJobs request returns more results than can be displayed, @@ -9212,7 +9983,7 @@ type ListTranscriptionJobsInput struct { NextToken *string `type:"string"` // Returns only transcription jobs with the specified status. Jobs are ordered - // by creation date, with the newest job first. If you don't include Status, + // by creation date, with the newest job first. If you do not include Status, // all transcription jobs are returned. Status *string `type:"string" enum:"TranscriptionJobStatus"` } @@ -9334,7 +10105,7 @@ type ListVocabulariesInput struct { // The maximum number of custom vocabularies to return in each page of results. // If there are fewer results than the value that you specify, only the actual - // results are returned. If you don't specify a value, a default of 5 is used. + // results are returned. If you do not specify a value, a default of 5 is used. MaxResults *int64 `min:"1" type:"integer"` // Returns only the custom vocabularies that contain the specified string. The @@ -9349,7 +10120,7 @@ type ListVocabulariesInput struct { NextToken *string `type:"string"` // Returns only custom vocabularies with the specified state. Vocabularies are - // ordered by creation date, with the newest vocabulary first. If you don't + // ordered by creation date, with the newest vocabulary first. If you do not // include StateEquals, all custom medical vocabularies are returned. StateEquals *string `type:"string" enum:"VocabularyState"` } @@ -9472,7 +10243,7 @@ type ListVocabularyFiltersInput struct { // The maximum number of custom vocabulary filters to return in each page of // results. If there are fewer results than the value that you specify, only - // the actual results are returned. If you don't specify a value, a default + // the actual results are returned. If you do not specify a value, a default // of 5 is used. MaxResults *int64 `min:"1" type:"integer"` @@ -9588,8 +10359,8 @@ func (s *ListVocabularyFiltersOutput) SetVocabularyFilters(v []*VocabularyFilter // Describes the Amazon S3 location of the media file you want to use in your // request. // -// For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) -// parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) +// For information on supported media formats, refer to the MediaFormat parameter +// or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. type Media struct { _ struct{} `type:"structure"` @@ -9661,9 +10432,552 @@ func (s *Media) SetMediaFileUri(v string) *Media { return s } -// SetRedactedMediaFileUri sets the RedactedMediaFileUri field's value. -func (s *Media) SetRedactedMediaFileUri(v string) *Media { - s.RedactedMediaFileUri = &v +// SetRedactedMediaFileUri sets the RedactedMediaFileUri field's value. +func (s *Media) SetRedactedMediaFileUri(v string) *Media { + s.RedactedMediaFileUri = &v + return s +} + +// Indicates which speaker is on which channel. The options are CLINICIAN and +// PATIENT +type MedicalScribeChannelDefinition struct { + _ struct{} `type:"structure"` + + // Specify the audio channel you want to define. + // + // ChannelId is a required field + ChannelId *int64 `type:"integer" required:"true"` + + // Specify the participant that you want to flag. The options are CLINICIAN + // and PATIENT + // + // ParticipantRole is a required field + ParticipantRole *string `type:"string" required:"true" enum:"MedicalScribeParticipantRole"` +} + +// 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 MedicalScribeChannelDefinition) 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 MedicalScribeChannelDefinition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MedicalScribeChannelDefinition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MedicalScribeChannelDefinition"} + if s.ChannelId == nil { + invalidParams.Add(request.NewErrParamRequired("ChannelId")) + } + if s.ParticipantRole == nil { + invalidParams.Add(request.NewErrParamRequired("ParticipantRole")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelId sets the ChannelId field's value. +func (s *MedicalScribeChannelDefinition) SetChannelId(v int64) *MedicalScribeChannelDefinition { + s.ChannelId = &v + return s +} + +// SetParticipantRole sets the ParticipantRole field's value. +func (s *MedicalScribeChannelDefinition) SetParticipantRole(v string) *MedicalScribeChannelDefinition { + s.ParticipantRole = &v + return s +} + +// Provides detailed information about a Medical Scribe job. +// +// To view the status of the specified Medical Scribe job, check the MedicalScribeJobStatus +// field. If the status is COMPLETED, the job is finished and you can find the +// results at the locations specified in MedicalScribeOutput. If the status +// is FAILED, FailureReason provides details on why your Medical Scribe job +// failed. +type MedicalScribeJob struct { + _ struct{} `type:"structure"` + + // Makes it possible to specify which speaker is on which channel. For example, + // if the clinician is the first participant to speak, you would set ChannelId + // of the first ChannelDefinition in the list to 0 (to indicate the first channel) + // and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). + // Then you would set the ChannelId of the second ChannelDefinition in the list + // to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to + // indicate that it's the patient speaking). + ChannelDefinitions []*MedicalScribeChannelDefinition `min:"2" type:"list"` + + // The date and time the specified Medical Scribe job finished processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished + // processing at 12:32 PM UTC-7 on May 4, 2022. + CompletionTime *time.Time `type:"timestamp"` + + // The date and time the specified Medical Scribe job request was made. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + CreationTime *time.Time `type:"timestamp"` + + // The Amazon Resource Name (ARN) of an IAM role that has permissions to access + // the Amazon S3 bucket that contains your input files, write to the output + // bucket, and use your KMS key if supplied. If the role that you specify doesn’t + // have the appropriate permissions your request fails. + // + // IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. + // For example: arn:aws:iam::111122223333:role/Admin. + // + // For more information, see IAM ARNs (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns). + DataAccessRoleArn *string `min:"20" type:"string"` + + // If MedicalScribeJobStatus is FAILED, FailureReason contains information about + // why the transcription job failed. See also: Common Errors (https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonErrors.html). + FailureReason *string `type:"string"` + + // The language code used to create your Medical Scribe job. US English (en-US) + // is the only supported language for Medical Scribe jobs. + LanguageCode *string `type:"string" enum:"MedicalScribeLanguageCode"` + + // Describes the Amazon S3 location of the media file you want to use in your + // request. + // + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // section in the Amazon S3 Developer Guide. + Media *Media `type:"structure"` + + // The name of the Medical Scribe job. Job names are case sensitive and must + // be unique within an Amazon Web Services account. + MedicalScribeJobName *string `min:"1" type:"string"` + + // Provides the status of the specified Medical Scribe job. + // + // If the status is COMPLETED, the job is finished and you can find the results + // at the location specified in MedicalScribeOutput If the status is FAILED, + // FailureReason provides details on why your Medical Scribe job failed. + MedicalScribeJobStatus *string `type:"string" enum:"MedicalScribeJobStatus"` + + // The location of the output of your Medical Scribe job. ClinicalDocumentUri + // holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds + // the Amazon S3 URI for the Transcript. + MedicalScribeOutput *MedicalScribeOutput_ `type:"structure"` + + // Makes it possible to control how your Medical Scribe job is processed using + // a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions + // are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions + // are not set. One and only one of ChannelIdentification and ShowSpeakerLabels + // must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. + // Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, + // VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName + // is set. + Settings *MedicalScribeSettings `type:"structure"` + + // The date and time your Medical Scribe job began processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + StartTime *time.Time `type:"timestamp"` + + // Adds one or more custom tags, each in the form of a key:value pair, to the + // Medica Scribe job. + // + // To learn more about using tags with Amazon Transcribe, refer to Tagging resources + // (https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html). + 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 MedicalScribeJob) 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 MedicalScribeJob) GoString() string { + return s.String() +} + +// SetChannelDefinitions sets the ChannelDefinitions field's value. +func (s *MedicalScribeJob) SetChannelDefinitions(v []*MedicalScribeChannelDefinition) *MedicalScribeJob { + s.ChannelDefinitions = v + return s +} + +// SetCompletionTime sets the CompletionTime field's value. +func (s *MedicalScribeJob) SetCompletionTime(v time.Time) *MedicalScribeJob { + s.CompletionTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *MedicalScribeJob) SetCreationTime(v time.Time) *MedicalScribeJob { + s.CreationTime = &v + return s +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *MedicalScribeJob) SetDataAccessRoleArn(v string) *MedicalScribeJob { + s.DataAccessRoleArn = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *MedicalScribeJob) SetFailureReason(v string) *MedicalScribeJob { + s.FailureReason = &v + return s +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *MedicalScribeJob) SetLanguageCode(v string) *MedicalScribeJob { + s.LanguageCode = &v + return s +} + +// SetMedia sets the Media field's value. +func (s *MedicalScribeJob) SetMedia(v *Media) *MedicalScribeJob { + s.Media = v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *MedicalScribeJob) SetMedicalScribeJobName(v string) *MedicalScribeJob { + s.MedicalScribeJobName = &v + return s +} + +// SetMedicalScribeJobStatus sets the MedicalScribeJobStatus field's value. +func (s *MedicalScribeJob) SetMedicalScribeJobStatus(v string) *MedicalScribeJob { + s.MedicalScribeJobStatus = &v + return s +} + +// SetMedicalScribeOutput sets the MedicalScribeOutput field's value. +func (s *MedicalScribeJob) SetMedicalScribeOutput(v *MedicalScribeOutput_) *MedicalScribeJob { + s.MedicalScribeOutput = v + return s +} + +// SetSettings sets the Settings field's value. +func (s *MedicalScribeJob) SetSettings(v *MedicalScribeSettings) *MedicalScribeJob { + s.Settings = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MedicalScribeJob) SetStartTime(v time.Time) *MedicalScribeJob { + s.StartTime = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *MedicalScribeJob) SetTags(v []*Tag) *MedicalScribeJob { + s.Tags = v + return s +} + +// Provides detailed information about a specific Medical Scribe job. +type MedicalScribeJobSummary struct { + _ struct{} `type:"structure"` + + // The date and time the specified Medical Scribe job finished processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that finished + // processing at 12:32 PM UTC-7 on May 4, 2022. + CompletionTime *time.Time `type:"timestamp"` + + // The date and time the specified Medical Scribe job request was made. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.761000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + CreationTime *time.Time `type:"timestamp"` + + // If MedicalScribeJobStatus is FAILED, FailureReason contains information about + // why the transcription job failed. See also: Common Errors (https://docs.aws.amazon.com/transcribe/latest/APIReference/CommonErrors.html). + FailureReason *string `type:"string"` + + // The language code used to create your Medical Scribe job. US English (en-US) + // is the only supported language for Medical Scribe jobs. + LanguageCode *string `type:"string" enum:"MedicalScribeLanguageCode"` + + // The name of the Medical Scribe job. Job names are case sensitive and must + // be unique within an Amazon Web Services account. + MedicalScribeJobName *string `min:"1" type:"string"` + + // Provides the status of the specified Medical Scribe job. + // + // If the status is COMPLETED, the job is finished and you can find the results + // at the location specified in MedicalScribeOutput If the status is FAILED, + // FailureReason provides details on why your Medical Scribe job failed. + MedicalScribeJobStatus *string `type:"string" enum:"MedicalScribeJobStatus"` + + // The date and time your Medical Scribe job began processing. + // + // Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, + // 2022-05-04T12:32:58.789000-07:00 represents a Medical Scribe job that started + // processing at 12:32 PM UTC-7 on May 4, 2022. + StartTime *time.Time `type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MedicalScribeJobSummary) 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 MedicalScribeJobSummary) GoString() string { + return s.String() +} + +// SetCompletionTime sets the CompletionTime field's value. +func (s *MedicalScribeJobSummary) SetCompletionTime(v time.Time) *MedicalScribeJobSummary { + s.CompletionTime = &v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *MedicalScribeJobSummary) SetCreationTime(v time.Time) *MedicalScribeJobSummary { + s.CreationTime = &v + return s +} + +// SetFailureReason sets the FailureReason field's value. +func (s *MedicalScribeJobSummary) SetFailureReason(v string) *MedicalScribeJobSummary { + s.FailureReason = &v + return s +} + +// SetLanguageCode sets the LanguageCode field's value. +func (s *MedicalScribeJobSummary) SetLanguageCode(v string) *MedicalScribeJobSummary { + s.LanguageCode = &v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *MedicalScribeJobSummary) SetMedicalScribeJobName(v string) *MedicalScribeJobSummary { + s.MedicalScribeJobName = &v + return s +} + +// SetMedicalScribeJobStatus sets the MedicalScribeJobStatus field's value. +func (s *MedicalScribeJobSummary) SetMedicalScribeJobStatus(v string) *MedicalScribeJobSummary { + s.MedicalScribeJobStatus = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *MedicalScribeJobSummary) SetStartTime(v time.Time) *MedicalScribeJobSummary { + s.StartTime = &v + return s +} + +// The location of the output of your Medical Scribe job. ClinicalDocumentUri +// holds the Amazon S3 URI for the Clinical Document and TranscriptFileUri holds +// the Amazon S3 URI for the Transcript. +type MedicalScribeOutput_ struct { + _ struct{} `type:"structure"` + + // Holds the Amazon S3 URI for the Clinical Document. + // + // ClinicalDocumentUri is a required field + ClinicalDocumentUri *string `min:"1" type:"string" required:"true"` + + // Holds the Amazon S3 URI for the Transcript. + // + // TranscriptFileUri is a required field + TranscriptFileUri *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 MedicalScribeOutput_) 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 MedicalScribeOutput_) GoString() string { + return s.String() +} + +// SetClinicalDocumentUri sets the ClinicalDocumentUri field's value. +func (s *MedicalScribeOutput_) SetClinicalDocumentUri(v string) *MedicalScribeOutput_ { + s.ClinicalDocumentUri = &v + return s +} + +// SetTranscriptFileUri sets the TranscriptFileUri field's value. +func (s *MedicalScribeOutput_) SetTranscriptFileUri(v string) *MedicalScribeOutput_ { + s.TranscriptFileUri = &v + return s +} + +// Makes it possible to control how your Medical Scribe job is processed using +// a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions +// are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions +// are not set. One and only one of ChannelIdentification and ShowSpeakerLabels +// must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. +// Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, +// VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName +// is set. +type MedicalScribeSettings struct { + _ struct{} `type:"structure"` + + // Enables channel identification in multi-channel audio. + // + // Channel identification transcribes the audio on each channel independently, + // then appends the output for each channel into one transcript. + // + // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). + ChannelIdentification *bool `type:"boolean"` + + // Specify the maximum number of speakers you want to partition in your media. + // + // Note that if your media contains more speakers than the specified number, + // multiple speakers are treated as a single speaker. + // + // If you specify the MaxSpeakerLabels field, you must set the ShowSpeakerLabels + // field to true. + MaxSpeakerLabels *int64 `min:"2" type:"integer"` + + // Enables speaker partitioning (diarization) in your Medical Scribe output. + // Speaker partitioning labels the speech from individual speakers in your media + // file. + // + // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. + // + // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). + ShowSpeakerLabels *bool `type:"boolean"` + + // Specify how you want your custom vocabulary filter applied to your transcript. + // + // To replace words with ***, choose mask. + // + // To delete words, choose remove. + // + // To flag words without changing them, choose tag. + VocabularyFilterMethod *string `type:"string" enum:"VocabularyFilterMethod"` + + // The name of the custom vocabulary filter you want to include in your Medical + // Scribe request. Custom vocabulary filter names are case sensitive. + // + // Note that if you include VocabularyFilterName in your request, you must also + // include VocabularyFilterMethod. + VocabularyFilterName *string `min:"1" type:"string"` + + // The name of the custom vocabulary you want to include in your Medical Scribe + // request. Custom vocabulary names are case sensitive. + VocabularyName *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 MedicalScribeSettings) 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 MedicalScribeSettings) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MedicalScribeSettings) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MedicalScribeSettings"} + if s.MaxSpeakerLabels != nil && *s.MaxSpeakerLabels < 2 { + invalidParams.Add(request.NewErrParamMinValue("MaxSpeakerLabels", 2)) + } + if s.VocabularyFilterName != nil && len(*s.VocabularyFilterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VocabularyFilterName", 1)) + } + if s.VocabularyName != nil && len(*s.VocabularyName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VocabularyName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChannelIdentification sets the ChannelIdentification field's value. +func (s *MedicalScribeSettings) SetChannelIdentification(v bool) *MedicalScribeSettings { + s.ChannelIdentification = &v + return s +} + +// SetMaxSpeakerLabels sets the MaxSpeakerLabels field's value. +func (s *MedicalScribeSettings) SetMaxSpeakerLabels(v int64) *MedicalScribeSettings { + s.MaxSpeakerLabels = &v + return s +} + +// SetShowSpeakerLabels sets the ShowSpeakerLabels field's value. +func (s *MedicalScribeSettings) SetShowSpeakerLabels(v bool) *MedicalScribeSettings { + s.ShowSpeakerLabels = &v + return s +} + +// SetVocabularyFilterMethod sets the VocabularyFilterMethod field's value. +func (s *MedicalScribeSettings) SetVocabularyFilterMethod(v string) *MedicalScribeSettings { + s.VocabularyFilterMethod = &v + return s +} + +// SetVocabularyFilterName sets the VocabularyFilterName field's value. +func (s *MedicalScribeSettings) SetVocabularyFilterName(v string) *MedicalScribeSettings { + s.VocabularyFilterName = &v + return s +} + +// SetVocabularyName sets the VocabularyName field's value. +func (s *MedicalScribeSettings) SetVocabularyName(v string) *MedicalScribeSettings { + s.VocabularyName = &v return s } @@ -9737,7 +11051,8 @@ type MedicalTranscriptionJob struct { // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -9754,11 +11069,11 @@ type MedicalTranscriptionJob struct { // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The language code used to create your medical transcription job. US English @@ -9768,8 +11083,8 @@ type MedicalTranscriptionJob struct { // Describes the Amazon S3 location of the media file you want to use in your // request. // - // For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) - // parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. Media *Media `type:"structure"` @@ -10100,9 +11415,6 @@ type MedicalTranscriptionSetting struct { // your audio is transcribed in a continuous manner and your transcript does // not separate the speech by channel. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). ChannelIdentification *bool `type:"boolean"` @@ -10144,9 +11456,6 @@ type MedicalTranscriptionSetting struct { // // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. // - // You can't include ShowSpeakerLabels and ChannelIdentification in the same - // request. Including both parameters returns a BadRequestException. - // // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). ShowSpeakerLabels *bool `type:"boolean"` @@ -10154,7 +11463,7 @@ type MedicalTranscriptionSetting struct { // transcription job. Custom vocabulary names are case sensitive. // // The language of the specified custom vocabulary must match the language code - // that you specify in your transcription request. If the languages don't match, + // that you specify in your transcription request. If the languages do not match, // the custom vocabulary isn't applied. There are no errors or warnings associated // with a language mismatch. US English (en-US) is the only valid language for // Amazon Transcribe Medical. @@ -10247,9 +11556,9 @@ type ModelSettings struct { // transcription job. Note that custom language model names are case sensitive. // // The language of the specified custom language model must match the language - // code that you specify in your transcription request. If the languages don't - // match, the custom language model isn't applied. There are no errors or warnings - // associated with a language mismatch. + // code that you specify in your transcription request. If the languages do + // not match, the custom language model isn't applied. There are no errors or + // warnings associated with a language mismatch. LanguageModelName *string `min:"1" type:"string"` } @@ -10722,9 +12031,6 @@ type Settings struct { // Channel identification transcribes the audio on each channel independently, // then appends the output for each channel into one transcript. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Transcribing multi-channel audio (https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html). ChannelIdentification *bool `type:"boolean"` @@ -10770,9 +12076,6 @@ type Settings struct { // // If you enable ShowSpeakerLabels in your request, you must also include MaxSpeakerLabels. // - // You can't include both ShowSpeakerLabels and ChannelIdentification in the - // same request. Including both parameters returns a BadRequestException. - // // For more information, see Partitioning speakers (diarization) (https://docs.aws.amazon.com/transcribe/latest/dg/diarization.html). ShowSpeakerLabels *bool `type:"boolean"` @@ -10943,7 +12246,7 @@ type StartCallAnalyticsJobInput struct { // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -10967,10 +12270,10 @@ type StartCallAnalyticsJobInput struct { // job using the CallAnalyticsJobName parameter. // // You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId - // parameter. If you don't specify a KMS key, Amazon Transcribe uses the default + // parameter. If you do not specify a KMS key, Amazon Transcribe uses the default // Amazon S3 key for server-side encryption. // - // If you don't specify OutputLocation, your transcript is placed in a service-managed + // If you do not specify OutputLocation, your transcript is placed in a service-managed // Amazon S3 bucket and you are provided with a URI to access your transcript. OutputLocation *string `min:"1" type:"string"` @@ -11113,6 +12416,292 @@ func (s *StartCallAnalyticsJobOutput) SetCallAnalyticsJob(v *CallAnalyticsJob) * return s } +type StartMedicalScribeJobInput struct { + _ struct{} `type:"structure"` + + // Makes it possible to specify which speaker is on which channel. For example, + // if the clinician is the first participant to speak, you would set ChannelId + // of the first ChannelDefinition in the list to 0 (to indicate the first channel) + // and ParticipantRole to CLINICIAN (to indicate that it's the clinician speaking). + // Then you would set the ChannelId of the second ChannelDefinition in the list + // to 1 (to indicate the second channel) and ParticipantRole to PATIENT (to + // indicate that it's the patient speaking). + ChannelDefinitions []*MedicalScribeChannelDefinition `min:"2" type:"list"` + + // The Amazon Resource Name (ARN) of an IAM role that has permissions to access + // the Amazon S3 bucket that contains your input files, write to the output + // bucket, and use your KMS key if supplied. If the role that you specify doesn’t + // have the appropriate permissions your request fails. + // + // IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. + // For example: arn:aws:iam::111122223333:role/Admin. + // + // For more information, see IAM ARNs (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns). + // + // DataAccessRoleArn is a required field + DataAccessRoleArn *string `min:"20" type:"string" required:"true"` + + // A map of plain text, non-secret key:value pairs, known as encryption context + // pairs, that provide an added layer of security for your data. For more information, + // see KMS encryption context (https://docs.aws.amazon.com/transcribe/latest/dg/key-management.html#kms-context) + // and Asymmetric keys in KMS (https://docs.aws.amazon.com/transcribe/latest/dg/symmetric-asymmetric.html). + KMSEncryptionContext map[string]*string `min:"1" type:"map"` + + // Describes the Amazon S3 location of the media file you want to use in your + // request. + // + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // section in the Amazon S3 Developer Guide. + // + // Media is a required field + Media *Media `type:"structure" required:"true"` + + // A unique name, chosen by you, for your Medical Scribe job. + // + // This name is case sensitive, cannot contain spaces, and must be unique within + // an Amazon Web Services account. If you try to create a new job with the same + // name as an existing job, you get a ConflictException error. + // + // MedicalScribeJobName is a required field + MedicalScribeJobName *string `min:"1" type:"string" required:"true"` + + // The name of the Amazon S3 bucket where you want your Medical Scribe output + // stored. Do not include the S3:// prefix of the specified bucket. + // + // Note that the role specified in the DataAccessRoleArn request parameter must + // have permission to use the specified location. You can change Amazon S3 permissions + // using the Amazon Web Services Management Console (https://console.aws.amazon.com/s3). + // See also Permissions Required for IAM User Roles (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user). + // + // OutputBucketName is a required field + OutputBucketName *string `type:"string" required:"true"` + + // The KMS key you want to use to encrypt your Medical Scribe output. + // + // If using a key located in the current Amazon Web Services account, you can + // specify your KMS key in one of four ways: + // + // Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use an alias for the KMS key ID. For example, alias/ExampleAlias. + // + // Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. + // + // If using a key located in a different Amazon Web Services account than the + // current Amazon Web Services account, you can specify your KMS key in one + // of two ways: + // + // Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab. + // + // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. + // + // If you do not specify an encryption key, your output is encrypted with the + // default Amazon S3 key (SSE-S3). + // + // Note that the role specified in the DataAccessRoleArn request parameter must + // have permission to use the specified KMS key. + OutputEncryptionKMSKeyId *string `min:"1" type:"string"` + + // Makes it possible to control how your Medical Scribe job is processed using + // a MedicalScribeSettings object. Specify ChannelIdentification if ChannelDefinitions + // are set. Enabled ShowSpeakerLabels if ChannelIdentification and ChannelDefinitions + // are not set. One and only one of ChannelIdentification and ShowSpeakerLabels + // must be set. If ShowSpeakerLabels is set, MaxSpeakerLabels must also be set. + // Use Settings to specify a vocabulary or vocabulary filter or both using VocabularyName, + // VocabularyFilterName. VocabularyFilterMethod must be specified if VocabularyFilterName + // is set. + // + // Settings is a required field + Settings *MedicalScribeSettings `type:"structure" required:"true"` + + // Adds one or more custom tags, each in the form of a key:value pair, to the + // Medica Scribe job. + // + // To learn more about using tags with Amazon Transcribe, refer to Tagging resources + // (https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html). + 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 StartMedicalScribeJobInput) 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 StartMedicalScribeJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartMedicalScribeJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartMedicalScribeJobInput"} + if s.ChannelDefinitions != nil && len(s.ChannelDefinitions) < 2 { + invalidParams.Add(request.NewErrParamMinLen("ChannelDefinitions", 2)) + } + if s.DataAccessRoleArn == nil { + invalidParams.Add(request.NewErrParamRequired("DataAccessRoleArn")) + } + if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20)) + } + if s.KMSEncryptionContext != nil && len(s.KMSEncryptionContext) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KMSEncryptionContext", 1)) + } + if s.Media == nil { + invalidParams.Add(request.NewErrParamRequired("Media")) + } + if s.MedicalScribeJobName == nil { + invalidParams.Add(request.NewErrParamRequired("MedicalScribeJobName")) + } + if s.MedicalScribeJobName != nil && len(*s.MedicalScribeJobName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MedicalScribeJobName", 1)) + } + if s.OutputBucketName == nil { + invalidParams.Add(request.NewErrParamRequired("OutputBucketName")) + } + if s.OutputEncryptionKMSKeyId != nil && len(*s.OutputEncryptionKMSKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OutputEncryptionKMSKeyId", 1)) + } + if s.Settings == nil { + invalidParams.Add(request.NewErrParamRequired("Settings")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.ChannelDefinitions != nil { + for i, v := range s.ChannelDefinitions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ChannelDefinitions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Media != nil { + if err := s.Media.Validate(); err != nil { + invalidParams.AddNested("Media", err.(request.ErrInvalidParams)) + } + } + if s.Settings != nil { + if err := s.Settings.Validate(); err != nil { + invalidParams.AddNested("Settings", 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 +} + +// SetChannelDefinitions sets the ChannelDefinitions field's value. +func (s *StartMedicalScribeJobInput) SetChannelDefinitions(v []*MedicalScribeChannelDefinition) *StartMedicalScribeJobInput { + s.ChannelDefinitions = v + return s +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *StartMedicalScribeJobInput) SetDataAccessRoleArn(v string) *StartMedicalScribeJobInput { + s.DataAccessRoleArn = &v + return s +} + +// SetKMSEncryptionContext sets the KMSEncryptionContext field's value. +func (s *StartMedicalScribeJobInput) SetKMSEncryptionContext(v map[string]*string) *StartMedicalScribeJobInput { + s.KMSEncryptionContext = v + return s +} + +// SetMedia sets the Media field's value. +func (s *StartMedicalScribeJobInput) SetMedia(v *Media) *StartMedicalScribeJobInput { + s.Media = v + return s +} + +// SetMedicalScribeJobName sets the MedicalScribeJobName field's value. +func (s *StartMedicalScribeJobInput) SetMedicalScribeJobName(v string) *StartMedicalScribeJobInput { + s.MedicalScribeJobName = &v + return s +} + +// SetOutputBucketName sets the OutputBucketName field's value. +func (s *StartMedicalScribeJobInput) SetOutputBucketName(v string) *StartMedicalScribeJobInput { + s.OutputBucketName = &v + return s +} + +// SetOutputEncryptionKMSKeyId sets the OutputEncryptionKMSKeyId field's value. +func (s *StartMedicalScribeJobInput) SetOutputEncryptionKMSKeyId(v string) *StartMedicalScribeJobInput { + s.OutputEncryptionKMSKeyId = &v + return s +} + +// SetSettings sets the Settings field's value. +func (s *StartMedicalScribeJobInput) SetSettings(v *MedicalScribeSettings) *StartMedicalScribeJobInput { + s.Settings = v + return s +} + +// SetTags sets the Tags field's value. +func (s *StartMedicalScribeJobInput) SetTags(v []*Tag) *StartMedicalScribeJobInput { + s.Tags = v + return s +} + +type StartMedicalScribeJobOutput struct { + _ struct{} `type:"structure"` + + // Provides detailed information about the current Medical Scribe job, including + // job status and, if applicable, failure reason. + MedicalScribeJob *MedicalScribeJob `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 StartMedicalScribeJobOutput) 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 StartMedicalScribeJobOutput) GoString() string { + return s.String() +} + +// SetMedicalScribeJob sets the MedicalScribeJob field's value. +func (s *StartMedicalScribeJobOutput) SetMedicalScribeJob(v *MedicalScribeJob) *StartMedicalScribeJobOutput { + s.MedicalScribeJob = v + return s +} + type StartMedicalTranscriptionJobInput struct { _ struct{} `type:"structure"` @@ -11138,8 +12727,8 @@ type StartMedicalTranscriptionJobInput struct { // Describes the Amazon S3 location of the media file you want to use in your // request. // - // For information on supported media formats, refer to the MediaFormat (https://docs.aws.amazon.com/APIReference/API_StartTranscriptionJob.html#transcribe-StartTranscriptionJob-request-MediaFormat) - // parameter or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) + // For information on supported media formats, refer to the MediaFormat parameter + // or the Media formats (https://docs.aws.amazon.com/transcribe/latest/dg/how-input.html#how-input-audio) // section in the Amazon S3 Developer Guide. // // Media is a required field @@ -11150,7 +12739,7 @@ type StartMedicalTranscriptionJobInput struct { // The sample rate, in hertz, of the audio track in your input media file. // - // If you don't specify the media sample rate, Amazon Transcribe Medical determines + // If you do not specify the media sample rate, Amazon Transcribe Medical determines // it for you. If you specify the sample rate, it must match the rate detected // by Amazon Transcribe Medical; if there's a mismatch between the value that // you specify and the value detected, your job fails. Therefore, in most cases, @@ -11211,7 +12800,7 @@ type StartMedicalTranscriptionJobInput struct { // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -11481,7 +13070,9 @@ type StartTranscriptionJobInput struct { // Makes it possible to redact or flag specified personally identifiable information // (PII) in your transcript. If you use ContentRedaction, you must also include - // the sub-parameters: PiiEntityTypes, RedactionOutput, and RedactionType. + // the sub-parameters: RedactionOutput and RedactionType. You can optionally + // include PiiEntityTypes to choose which types of PII you want to redact. If + // you do not include PiiEntityTypes in your request, all PII is redacted. ContentRedaction *ContentRedaction `type:"structure"` // Enables automatic language identification in your transcription job request. @@ -11608,7 +13199,7 @@ type StartTranscriptionJobInput struct { // The sample rate, in hertz, of the audio track in your input media file. // - // If you don't specify the media sample rate, Amazon Transcribe determines + // If you do not specify the media sample rate, Amazon Transcribe determines // it for you. If you specify the sample rate, it must match the rate detected // by Amazon Transcribe. If there's a mismatch between the value that you specify // and the value detected, your job fails. In most cases, you can omit MediaSampleRateHertz @@ -11639,7 +13230,7 @@ type StartTranscriptionJobInput struct { // Console (https://console.aws.amazon.com/s3). See also Permissions Required // for IAM User Roles (https://docs.aws.amazon.com/transcribe/latest/dg/security_iam_id-based-policy-examples.html#auth-role-iam-user). // - // If you don't specify OutputBucketName, your transcript is placed in a service-managed + // If you do not specify OutputBucketName, your transcript is placed in a service-managed // Amazon S3 bucket and you are provided with a URI to access your transcript. OutputBucketName *string `type:"string"` @@ -11664,7 +13255,7 @@ type StartTranscriptionJobInput struct { // // Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias. // - // If you don't specify an encryption key, your output is encrypted with the + // If you do not specify an encryption key, your output is encrypted with the // default Amazon S3 key (SSE-S3). // // If you specify a KMS key to encrypt your output, you must also specify an @@ -12651,7 +14242,8 @@ type TranscriptionJob struct { // The FailureReason field contains one of the following values: // // * Unsupported media format. The media format specified in MediaFormat - // isn't valid. Refer to MediaFormat for a list of supported formats. + // isn't valid. Refer to refer to the MediaFormat parameter for a list of + // supported formats. // // * The media format provided does not match the detected media format. // The media format specified in MediaFormat doesn't match the format of @@ -12668,11 +14260,11 @@ type TranscriptionJob struct { // // * Invalid file size: file size too large. The size of your media file // is larger than what Amazon Transcribe can process. For more information, - // refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). // // * Invalid number of channels: number of channels too large. Your audio // contains more channels than Amazon Transcribe is able to process. For - // more information, refer to Guidelines and quotas (https://docs.aws.amazon.com/transcribe/latest/dg/limits-guidelines.html#limits). + // more information, refer to Service quotas (https://docs.aws.amazon.com/general/latest/gr/transcribe.html#limits-amazon-transcribe). FailureReason *string `type:"string"` // The confidence score associated with the language identified in your media @@ -14560,6 +16152,58 @@ func MedicalContentIdentificationType_Values() []string { } } +const ( + // MedicalScribeJobStatusQueued is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusQueued = "QUEUED" + + // MedicalScribeJobStatusInProgress is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusInProgress = "IN_PROGRESS" + + // MedicalScribeJobStatusFailed is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusFailed = "FAILED" + + // MedicalScribeJobStatusCompleted is a MedicalScribeJobStatus enum value + MedicalScribeJobStatusCompleted = "COMPLETED" +) + +// MedicalScribeJobStatus_Values returns all elements of the MedicalScribeJobStatus enum +func MedicalScribeJobStatus_Values() []string { + return []string{ + MedicalScribeJobStatusQueued, + MedicalScribeJobStatusInProgress, + MedicalScribeJobStatusFailed, + MedicalScribeJobStatusCompleted, + } +} + +const ( + // MedicalScribeLanguageCodeEnUs is a MedicalScribeLanguageCode enum value + MedicalScribeLanguageCodeEnUs = "en-US" +) + +// MedicalScribeLanguageCode_Values returns all elements of the MedicalScribeLanguageCode enum +func MedicalScribeLanguageCode_Values() []string { + return []string{ + MedicalScribeLanguageCodeEnUs, + } +} + +const ( + // MedicalScribeParticipantRolePatient is a MedicalScribeParticipantRole enum value + MedicalScribeParticipantRolePatient = "PATIENT" + + // MedicalScribeParticipantRoleClinician is a MedicalScribeParticipantRole enum value + MedicalScribeParticipantRoleClinician = "CLINICIAN" +) + +// MedicalScribeParticipantRole_Values returns all elements of the MedicalScribeParticipantRole enum +func MedicalScribeParticipantRole_Values() []string { + return []string{ + MedicalScribeParticipantRolePatient, + MedicalScribeParticipantRoleClinician, + } +} + const ( // ModelStatusInProgress is a ModelStatus enum value ModelStatusInProgress = "IN_PROGRESS" diff --git a/service/transcribeservice/transcribeserviceiface/interface.go b/service/transcribeservice/transcribeserviceiface/interface.go index 492cf60b1f6..23f7182bdcf 100644 --- a/service/transcribeservice/transcribeserviceiface/interface.go +++ b/service/transcribeservice/transcribeserviceiface/interface.go @@ -92,6 +92,10 @@ type TranscribeServiceAPI interface { DeleteLanguageModelWithContext(aws.Context, *transcribeservice.DeleteLanguageModelInput, ...request.Option) (*transcribeservice.DeleteLanguageModelOutput, error) DeleteLanguageModelRequest(*transcribeservice.DeleteLanguageModelInput) (*request.Request, *transcribeservice.DeleteLanguageModelOutput) + DeleteMedicalScribeJob(*transcribeservice.DeleteMedicalScribeJobInput) (*transcribeservice.DeleteMedicalScribeJobOutput, error) + DeleteMedicalScribeJobWithContext(aws.Context, *transcribeservice.DeleteMedicalScribeJobInput, ...request.Option) (*transcribeservice.DeleteMedicalScribeJobOutput, error) + DeleteMedicalScribeJobRequest(*transcribeservice.DeleteMedicalScribeJobInput) (*request.Request, *transcribeservice.DeleteMedicalScribeJobOutput) + DeleteMedicalTranscriptionJob(*transcribeservice.DeleteMedicalTranscriptionJobInput) (*transcribeservice.DeleteMedicalTranscriptionJobOutput, error) DeleteMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.DeleteMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.DeleteMedicalTranscriptionJobOutput, error) DeleteMedicalTranscriptionJobRequest(*transcribeservice.DeleteMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.DeleteMedicalTranscriptionJobOutput) @@ -124,6 +128,10 @@ type TranscribeServiceAPI interface { GetCallAnalyticsJobWithContext(aws.Context, *transcribeservice.GetCallAnalyticsJobInput, ...request.Option) (*transcribeservice.GetCallAnalyticsJobOutput, error) GetCallAnalyticsJobRequest(*transcribeservice.GetCallAnalyticsJobInput) (*request.Request, *transcribeservice.GetCallAnalyticsJobOutput) + GetMedicalScribeJob(*transcribeservice.GetMedicalScribeJobInput) (*transcribeservice.GetMedicalScribeJobOutput, error) + GetMedicalScribeJobWithContext(aws.Context, *transcribeservice.GetMedicalScribeJobInput, ...request.Option) (*transcribeservice.GetMedicalScribeJobOutput, error) + GetMedicalScribeJobRequest(*transcribeservice.GetMedicalScribeJobInput) (*request.Request, *transcribeservice.GetMedicalScribeJobOutput) + GetMedicalTranscriptionJob(*transcribeservice.GetMedicalTranscriptionJobInput) (*transcribeservice.GetMedicalTranscriptionJobOutput, error) GetMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.GetMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.GetMedicalTranscriptionJobOutput, error) GetMedicalTranscriptionJobRequest(*transcribeservice.GetMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.GetMedicalTranscriptionJobOutput) @@ -165,6 +173,13 @@ type TranscribeServiceAPI interface { ListLanguageModelsPages(*transcribeservice.ListLanguageModelsInput, func(*transcribeservice.ListLanguageModelsOutput, bool) bool) error ListLanguageModelsPagesWithContext(aws.Context, *transcribeservice.ListLanguageModelsInput, func(*transcribeservice.ListLanguageModelsOutput, bool) bool, ...request.Option) error + ListMedicalScribeJobs(*transcribeservice.ListMedicalScribeJobsInput) (*transcribeservice.ListMedicalScribeJobsOutput, error) + ListMedicalScribeJobsWithContext(aws.Context, *transcribeservice.ListMedicalScribeJobsInput, ...request.Option) (*transcribeservice.ListMedicalScribeJobsOutput, error) + ListMedicalScribeJobsRequest(*transcribeservice.ListMedicalScribeJobsInput) (*request.Request, *transcribeservice.ListMedicalScribeJobsOutput) + + ListMedicalScribeJobsPages(*transcribeservice.ListMedicalScribeJobsInput, func(*transcribeservice.ListMedicalScribeJobsOutput, bool) bool) error + ListMedicalScribeJobsPagesWithContext(aws.Context, *transcribeservice.ListMedicalScribeJobsInput, func(*transcribeservice.ListMedicalScribeJobsOutput, bool) bool, ...request.Option) error + ListMedicalTranscriptionJobs(*transcribeservice.ListMedicalTranscriptionJobsInput) (*transcribeservice.ListMedicalTranscriptionJobsOutput, error) ListMedicalTranscriptionJobsWithContext(aws.Context, *transcribeservice.ListMedicalTranscriptionJobsInput, ...request.Option) (*transcribeservice.ListMedicalTranscriptionJobsOutput, error) ListMedicalTranscriptionJobsRequest(*transcribeservice.ListMedicalTranscriptionJobsInput) (*request.Request, *transcribeservice.ListMedicalTranscriptionJobsOutput) @@ -208,6 +223,10 @@ type TranscribeServiceAPI interface { StartCallAnalyticsJobWithContext(aws.Context, *transcribeservice.StartCallAnalyticsJobInput, ...request.Option) (*transcribeservice.StartCallAnalyticsJobOutput, error) StartCallAnalyticsJobRequest(*transcribeservice.StartCallAnalyticsJobInput) (*request.Request, *transcribeservice.StartCallAnalyticsJobOutput) + StartMedicalScribeJob(*transcribeservice.StartMedicalScribeJobInput) (*transcribeservice.StartMedicalScribeJobOutput, error) + StartMedicalScribeJobWithContext(aws.Context, *transcribeservice.StartMedicalScribeJobInput, ...request.Option) (*transcribeservice.StartMedicalScribeJobOutput, error) + StartMedicalScribeJobRequest(*transcribeservice.StartMedicalScribeJobInput) (*request.Request, *transcribeservice.StartMedicalScribeJobOutput) + StartMedicalTranscriptionJob(*transcribeservice.StartMedicalTranscriptionJobInput) (*transcribeservice.StartMedicalTranscriptionJobOutput, error) StartMedicalTranscriptionJobWithContext(aws.Context, *transcribeservice.StartMedicalTranscriptionJobInput, ...request.Option) (*transcribeservice.StartMedicalTranscriptionJobOutput, error) StartMedicalTranscriptionJobRequest(*transcribeservice.StartMedicalTranscriptionJobInput) (*request.Request, *transcribeservice.StartMedicalTranscriptionJobOutput)