diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b7a36d4fbc..24160099b23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,25 @@ +Release v1.42.45 (2022-02-02) +=== + +### Service Client Updates +* `service/appflow`: Updates service API, documentation, and paginators +* `service/ce`: Updates service API and documentation +* `service/comprehend`: Updates service API and documentation +* `service/dynamodb`: Updates service API, documentation, waiters, paginators, and examples + * Documentation update for DynamoDB Java SDK. +* `service/elasticache`: Updates service documentation + * Documentation update for AWS ElastiCache +* `service/elasticmapreduce`: Updates service documentation + * Documentation updates for Amazon EMR. +* `service/es`: Updates service API and documentation + * Allows customers to get progress updates for blue/green deployments +* `service/fis`: Updates service API, documentation, and paginators +* `service/glue`: Updates service API and documentation + * Launch Protobuf support for AWS Glue Schema Registry +* `service/iot`: Updates service API + * This release adds support for configuring AWS IoT logging level per client ID, source IP, or principal ID. +* `service/personalize`: Updates service API and documentation + Release v1.42.44 (2022-01-28) === diff --git a/aws/version.go b/aws/version.go index 781a30ace28..0dd7338295f 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.42.44" +const SDKVersion = "1.42.45" diff --git a/models/apis/appflow/2020-08-23/api-2.json b/models/apis/appflow/2020-08-23/api-2.json index 98634c8f6d8..c5e2ce867bc 100644 --- a/models/apis/appflow/2020-08-23/api-2.json +++ b/models/apis/appflow/2020-08-23/api-2.json @@ -74,6 +74,20 @@ {"shape":"InternalServerException"} ] }, + "DescribeConnector":{ + "name":"DescribeConnector", + "http":{ + "method":"POST", + "requestUri":"/describe-connector" + }, + "input":{"shape":"DescribeConnectorRequest"}, + "output":{"shape":"DescribeConnectorResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "DescribeConnectorEntity":{ "name":"DescribeConnectorEntity", "http":{ @@ -159,6 +173,19 @@ {"shape":"InternalServerException"} ] }, + "ListConnectors":{ + "name":"ListConnectors", + "http":{ + "method":"POST", + "requestUri":"/list-connectors" + }, + "input":{"shape":"ListConnectorsRequest"}, + "output":{"shape":"ListConnectorsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, "ListFlows":{ "name":"ListFlows", "http":{ @@ -186,6 +213,26 @@ {"shape":"ResourceNotFoundException"} ] }, + "RegisterConnector":{ + "name":"RegisterConnector", + "http":{ + "method":"POST", + "requestUri":"/register-connector" + }, + "input":{"shape":"RegisterConnectorRequest"}, + "output":{"shape":"RegisterConnectorResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"}, + {"shape":"ConnectorServerException"}, + {"shape":"ConnectorAuthenticationException"} + ] + }, "StartFlow":{ "name":"StartFlow", "http":{ @@ -230,6 +277,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "UnregisterConnector":{ + "name":"UnregisterConnector", + "http":{ + "method":"POST", + "requestUri":"/unregister-connector" + }, + "input":{"shape":"UnregisterConnectorRequest"}, + "output":{"shape":"UnregisterConnectorResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"} + ] + }, "UntagResource":{ "name":"UntagResource", "http":{ @@ -285,6 +346,14 @@ "max":512, "pattern":"arn:aws:.*:.*:[0-9]+:.*" }, + "AccessDeniedException":{ + "type":"structure", + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":403}, + "exception":true + }, "AccessKeyId":{ "type":"string", "max":256, @@ -293,7 +362,7 @@ }, "AccessToken":{ "type":"string", - "max":512, + "max":2048, "pattern":"\\S+", "sensitive":true }, @@ -350,7 +419,16 @@ "ApiKey":{ "type":"string", "max":256, - "pattern":"\\S+" + "pattern":"\\S+", + "sensitive":true + }, + "ApiKeyCredentials":{ + "type":"structure", + "required":["apiKey"], + "members":{ + "apiKey":{"shape":"ApiKey"}, + "apiSecretKey":{"shape":"ApiSecretKey"} + } }, "ApiSecretKey":{ "type":"string", @@ -363,6 +441,11 @@ "max":256, "pattern":"\\S+" }, + "ApiVersion":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, "ApplicationHostUrl":{ "type":"string", "max":256, @@ -378,6 +461,11 @@ "max":512, "pattern":"\\S+" }, + "ApplicationType":{ + "type":"string", + "max":512, + "pattern":"\\S+" + }, "AuthCode":{ "type":"string", "max":512, @@ -388,6 +476,45 @@ "max":256, "pattern":"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]" }, + "AuthCodeUrlList":{ + "type":"list", + "member":{"shape":"AuthCodeUrl"} + }, + "AuthParameter":{ + "type":"structure", + "members":{ + "key":{"shape":"Key"}, + "isRequired":{"shape":"Boolean"}, + "label":{"shape":"Label"}, + "description":{"shape":"Description"}, + "isSensitiveField":{"shape":"Boolean"}, + "connectorSuppliedValues":{"shape":"ConnectorSuppliedValueList"} + } + }, + "AuthParameterList":{ + "type":"list", + "member":{"shape":"AuthParameter"} + }, + "AuthenticationConfig":{ + "type":"structure", + "members":{ + "isBasicAuthSupported":{"shape":"Boolean"}, + "isApiKeyAuthSupported":{"shape":"Boolean"}, + "isOAuth2Supported":{"shape":"Boolean"}, + "isCustomAuthSupported":{"shape":"Boolean"}, + "oAuth2Defaults":{"shape":"OAuth2Defaults"}, + "customAuthConfigs":{"shape":"CustomAuthConfigList"} + } + }, + "AuthenticationType":{ + "type":"string", + "enum":[ + "OAUTH2", + "APIKEY", + "BASIC", + "CUSTOM" + ] + }, "BasicAuthCredentials":{ "type":"structure", "required":[ @@ -468,7 +595,25 @@ "isPrivateLinkEnabled":{"shape":"Boolean"}, "isPrivateLinkEndpointUrlRequired":{"shape":"Boolean"}, "supportedTriggerTypes":{"shape":"TriggerTypeList"}, - "connectorMetadata":{"shape":"ConnectorMetadata"} + "connectorMetadata":{"shape":"ConnectorMetadata"}, + "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"}, + "connectorDescription":{"shape":"ConnectorDescription"}, + "connectorOwner":{"shape":"ConnectorOwner"}, + "connectorName":{"shape":"ConnectorName"}, + "connectorVersion":{"shape":"ConnectorVersion"}, + "connectorArn":{"shape":"ARN"}, + "connectorModes":{"shape":"ConnectorModeList"}, + "authenticationConfig":{"shape":"AuthenticationConfig"}, + "connectorRuntimeSettings":{"shape":"ConnectorRuntimeSettingList"}, + "supportedApiVersions":{"shape":"SupportedApiVersionList"}, + "supportedOperators":{"shape":"SupportedOperatorList"}, + "supportedWriteOperations":{"shape":"SupportedWriteOperationList"}, + "connectorProvisioningType":{"shape":"ConnectorProvisioningType"}, + "connectorProvisioningConfig":{"shape":"ConnectorProvisioningConfig"}, + "logoURL":{"shape":"LogoURL"}, + "registeredAt":{"shape":"Date"}, + "registeredBy":{"shape":"RegisteredBy"} } }, "ConnectorConfigurationsMap":{ @@ -476,6 +621,27 @@ "key":{"shape":"ConnectorType"}, "value":{"shape":"ConnectorConfiguration"} }, + "ConnectorDescription":{ + "type":"string", + "max":2048, + "pattern":"[\\w!@#\\-.?,\\s]*" + }, + "ConnectorDetail":{ + "type":"structure", + "members":{ + "connectorDescription":{"shape":"ConnectorDescription"}, + "connectorName":{"shape":"ConnectorName"}, + "connectorOwner":{"shape":"ConnectorOwner"}, + "connectorVersion":{"shape":"ConnectorVersion"}, + "applicationType":{"shape":"ApplicationType"}, + "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"}, + "registeredAt":{"shape":"Date"}, + "registeredBy":{"shape":"RegisteredBy"}, + "connectorProvisioningType":{"shape":"ConnectorProvisioningType"}, + "connectorModes":{"shape":"ConnectorModeList"} + } + }, "ConnectorEntity":{ "type":"structure", "required":["name"], @@ -490,11 +656,16 @@ "required":["identifier"], "members":{ "identifier":{"shape":"Identifier"}, + "parentIdentifier":{"shape":"Identifier"}, "label":{"shape":"Label"}, + "isPrimaryKey":{"shape":"Boolean"}, + "defaultValue":{"shape":"String"}, + "isDeprecated":{"shape":"Boolean"}, "supportedFieldTypeDetails":{"shape":"SupportedFieldTypeDetails"}, "description":{"shape":"Description"}, "sourceProperties":{"shape":"SourceFieldProperties"}, - "destinationProperties":{"shape":"DestinationFieldProperties"} + "destinationProperties":{"shape":"DestinationFieldProperties"}, + "customProperties":{"shape":"CustomProperties"} } }, "ConnectorEntityFieldList":{ @@ -510,6 +681,15 @@ "key":{"shape":"Group"}, "value":{"shape":"ConnectorEntityList"} }, + "ConnectorLabel":{ + "type":"string", + "max":256, + "pattern":"[a-zA-Z0-9][\\w!@#.-]+" + }, + "ConnectorList":{ + "type":"list", + "member":{"shape":"ConnectorDetail"} + }, "ConnectorMetadata":{ "type":"structure", "members":{ @@ -536,6 +716,20 @@ "SAPOData":{"shape":"SAPODataMetadata"} } }, + "ConnectorMode":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, + "ConnectorModeList":{ + "type":"list", + "member":{"shape":"ConnectorMode"} + }, + "ConnectorName":{ + "type":"string", + "max":256, + "pattern":".*" + }, "ConnectorOAuthRequest":{ "type":"structure", "members":{ @@ -560,15 +754,22 @@ "Trendmicro":{"shape":"TrendmicroConnectorOperator"}, "Veeva":{"shape":"VeevaConnectorOperator"}, "Zendesk":{"shape":"ZendeskConnectorOperator"}, - "SAPOData":{"shape":"SAPODataConnectorOperator"} + "SAPOData":{"shape":"SAPODataConnectorOperator"}, + "CustomConnector":{"shape":"Operator"} } }, + "ConnectorOwner":{ + "type":"string", + "max":256, + "pattern":".*" + }, "ConnectorProfile":{ "type":"structure", "members":{ "connectorProfileArn":{"shape":"ConnectorProfileArn"}, "connectorProfileName":{"shape":"ConnectorProfileName"}, "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"}, "connectionMode":{"shape":"ConnectionMode"}, "credentialsArn":{"shape":"ARN"}, "connectorProfileProperties":{"shape":"ConnectorProfileProperties"}, @@ -580,7 +781,7 @@ "ConnectorProfileArn":{ "type":"string", "max":512, - "pattern":"arn:aws:kms:.*:[0-9]+:.*" + "pattern":"arn:aws:appflow:.*:[0-9]+:.*" }, "ConnectorProfileConfig":{ "type":"structure", @@ -612,7 +813,8 @@ "Trendmicro":{"shape":"TrendmicroConnectorProfileCredentials"}, "Veeva":{"shape":"VeevaConnectorProfileCredentials"}, "Zendesk":{"shape":"ZendeskConnectorProfileCredentials"}, - "SAPOData":{"shape":"SAPODataConnectorProfileCredentials"} + "SAPOData":{"shape":"SAPODataConnectorProfileCredentials"}, + "CustomConnector":{"shape":"CustomConnectorProfileCredentials"} } }, "ConnectorProfileDetailList":{ @@ -649,9 +851,46 @@ "Trendmicro":{"shape":"TrendmicroConnectorProfileProperties"}, "Veeva":{"shape":"VeevaConnectorProfileProperties"}, "Zendesk":{"shape":"ZendeskConnectorProfileProperties"}, - "SAPOData":{"shape":"SAPODataConnectorProfileProperties"} + "SAPOData":{"shape":"SAPODataConnectorProfileProperties"}, + "CustomConnector":{"shape":"CustomConnectorProfileProperties"} + } + }, + "ConnectorProvisioningConfig":{ + "type":"structure", + "members":{ + "lambda":{"shape":"LambdaConnectorProvisioningConfig"} + } + }, + "ConnectorProvisioningType":{ + "type":"string", + "enum":["LAMBDA"] + }, + "ConnectorRuntimeSetting":{ + "type":"structure", + "members":{ + "key":{"shape":"Key"}, + "dataType":{"shape":"ConnectorRuntimeSettingDataType"}, + "isRequired":{"shape":"Boolean"}, + "label":{"shape":"Label"}, + "description":{"shape":"Description"}, + "scope":{"shape":"ConnectorRuntimeSettingScope"}, + "connectorSuppliedValueOptions":{"shape":"ConnectorSuppliedValueOptionList"} } }, + "ConnectorRuntimeSettingDataType":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, + "ConnectorRuntimeSettingList":{ + "type":"list", + "member":{"shape":"ConnectorRuntimeSetting"} + }, + "ConnectorRuntimeSettingScope":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, "ConnectorServerException":{ "type":"structure", "members":{ @@ -660,6 +899,19 @@ "error":{"httpStatusCode":400}, "exception":true }, + "ConnectorSuppliedValue":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, + "ConnectorSuppliedValueList":{ + "type":"list", + "member":{"shape":"ConnectorSuppliedValue"} + }, + "ConnectorSuppliedValueOptionList":{ + "type":"list", + "member":{"shape":"ConnectorSuppliedValue"} + }, "ConnectorType":{ "type":"string", "enum":[ @@ -684,7 +936,8 @@ "Upsolver", "Honeycode", "CustomerProfiles", - "SAPOData" + "SAPOData", + "CustomConnector" ] }, "ConnectorTypeList":{ @@ -693,6 +946,11 @@ "max":100, "min":0 }, + "ConnectorVersion":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, "CreateConnectorProfileRequest":{ "type":"structure", "required":[ @@ -705,6 +963,7 @@ "connectorProfileName":{"shape":"ConnectorProfileName"}, "kmsArn":{"shape":"KMSArn"}, "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"}, "connectionMode":{"shape":"ConnectionMode"}, "connectorProfileConfig":{"shape":"ConnectorProfileConfig"} } @@ -747,6 +1006,105 @@ "max":256, "pattern":"\\S+" }, + "CredentialsMap":{ + "type":"map", + "key":{"shape":"CredentialsMapKey"}, + "value":{"shape":"CredentialsMapValue"}, + "max":50, + "min":0 + }, + "CredentialsMapKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[\\w]+", + "sensitive":true + }, + "CredentialsMapValue":{ + "type":"string", + "max":2048, + "pattern":"\\S+", + "sensitive":true + }, + "CustomAuthConfig":{ + "type":"structure", + "members":{ + "customAuthenticationType":{"shape":"CustomAuthenticationType"}, + "authParameters":{"shape":"AuthParameterList"} + } + }, + "CustomAuthConfigList":{ + "type":"list", + "member":{"shape":"CustomAuthConfig"} + }, + "CustomAuthCredentials":{ + "type":"structure", + "required":["customAuthenticationType"], + "members":{ + "customAuthenticationType":{"shape":"CustomAuthenticationType"}, + "credentialsMap":{"shape":"CredentialsMap"} + } + }, + "CustomAuthenticationType":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, + "CustomConnectorDestinationProperties":{ + "type":"structure", + "required":["entityName"], + "members":{ + "entityName":{"shape":"EntityName"}, + "errorHandlingConfig":{"shape":"ErrorHandlingConfig"}, + "writeOperationType":{"shape":"WriteOperationType"}, + "idFieldNames":{"shape":"IdFieldNameList"}, + "customProperties":{"shape":"CustomProperties"} + } + }, + "CustomConnectorProfileCredentials":{ + "type":"structure", + "required":["authenticationType"], + "members":{ + "authenticationType":{"shape":"AuthenticationType"}, + "basic":{"shape":"BasicAuthCredentials"}, + "oauth2":{"shape":"OAuth2Credentials"}, + "apiKey":{"shape":"ApiKeyCredentials"}, + "custom":{"shape":"CustomAuthCredentials"} + } + }, + "CustomConnectorProfileProperties":{ + "type":"structure", + "members":{ + "profileProperties":{"shape":"ProfilePropertiesMap"}, + "oAuth2Properties":{"shape":"OAuth2Properties"} + } + }, + "CustomConnectorSourceProperties":{ + "type":"structure", + "required":["entityName"], + "members":{ + "entityName":{"shape":"EntityName"}, + "customProperties":{"shape":"CustomProperties"} + } + }, + "CustomProperties":{ + "type":"map", + "key":{"shape":"CustomPropertyKey"}, + "value":{"shape":"CustomPropertyValue"}, + "max":50, + "min":0 + }, + "CustomPropertyKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[\\w]+" + }, + "CustomPropertyValue":{ + "type":"string", + "max":2048, + "pattern":"\\S+" + }, "CustomerProfilesDestinationProperties":{ "type":"structure", "required":["domainName"], @@ -858,9 +1216,10 @@ "type":"structure", "required":["connectorEntityName"], "members":{ - "connectorEntityName":{"shape":"Name"}, + "connectorEntityName":{"shape":"EntityName"}, "connectorType":{"shape":"ConnectorType"}, - "connectorProfileName":{"shape":"ConnectorProfileName"} + "connectorProfileName":{"shape":"ConnectorProfileName"}, + "apiVersion":{"shape":"ApiVersion"} } }, "DescribeConnectorEntityResponse":{ @@ -875,6 +1234,7 @@ "members":{ "connectorProfileNames":{"shape":"ConnectorProfileNameList"}, "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"}, "maxResults":{"shape":"MaxResults"}, "nextToken":{"shape":"NextToken"} } @@ -886,10 +1246,25 @@ "nextToken":{"shape":"NextToken"} } }, + "DescribeConnectorRequest":{ + "type":"structure", + "required":["connectorType"], + "members":{ + "connectorType":{"shape":"ConnectorType"}, + "connectorLabel":{"shape":"ConnectorLabel"} + } + }, + "DescribeConnectorResponse":{ + "type":"structure", + "members":{ + "connectorConfiguration":{"shape":"ConnectorConfiguration"} + } + }, "DescribeConnectorsRequest":{ "type":"structure", "members":{ "connectorTypes":{"shape":"ConnectorTypeList"}, + "maxResults":{"shape":"MaxResults"}, "nextToken":{"shape":"NextToken"} } }, @@ -897,6 +1272,7 @@ "type":"structure", "members":{ "connectorConfigurations":{"shape":"ConnectorConfigurationsMap"}, + "connectors":{"shape":"ConnectorList"}, "nextToken":{"shape":"NextToken"} } }, @@ -961,7 +1337,8 @@ "Upsolver":{"shape":"UpsolverDestinationProperties"}, "Honeycode":{"shape":"HoneycodeDestinationProperties"}, "CustomerProfiles":{"shape":"CustomerProfilesDestinationProperties"}, - "Zendesk":{"shape":"ZendeskDestinationProperties"} + "Zendesk":{"shape":"ZendeskDestinationProperties"}, + "CustomConnector":{"shape":"CustomConnectorDestinationProperties"} } }, "DestinationField":{ @@ -976,6 +1353,7 @@ "isNullable":{"shape":"Boolean"}, "isUpsertable":{"shape":"Boolean"}, "isUpdatable":{"shape":"Boolean"}, + "isDefaultedOnCreate":{"shape":"Boolean"}, "supportedWriteOperations":{"shape":"SupportedWriteOperationList"} } }, @@ -987,6 +1365,7 @@ ], "members":{ "connectorType":{"shape":"ConnectorType"}, + "apiVersion":{"shape":"ApiVersion"}, "connectorProfileName":{"shape":"ConnectorProfileName"}, "destinationConnectorProperties":{"shape":"DestinationConnectorProperties"} } @@ -1005,6 +1384,7 @@ "max":64, "pattern":"\\S+" }, + "Double":{"type":"double"}, "DynatraceConnectorOperator":{ "type":"string", "enum":[ @@ -1056,6 +1436,11 @@ "max":256, "pattern":"[\\s\\w/!@#+=.-]*" }, + "EntityName":{ + "type":"string", + "max":1024, + "pattern":"\\S+" + }, "ErrorHandlingConfig":{ "type":"structure", "members":{ @@ -1146,7 +1531,11 @@ "members":{ "fieldType":{"shape":"FieldType"}, "filterOperators":{"shape":"FilterOperatorList"}, - "supportedValues":{"shape":"SupportedValueList"} + "supportedValues":{"shape":"SupportedValueList"}, + "valueRegexPattern":{"shape":"String"}, + "supportedDateFormat":{"shape":"String"}, + "fieldValueRange":{"shape":"Range"}, + "fieldLengthRange":{"shape":"Range"} } }, "FileType":{ @@ -1174,7 +1563,9 @@ "flowName":{"shape":"FlowName"}, "flowStatus":{"shape":"FlowStatus"}, "sourceConnectorType":{"shape":"ConnectorType"}, + "sourceConnectorLabel":{"shape":"ConnectorLabel"}, "destinationConnectorType":{"shape":"ConnectorType"}, + "destinationConnectorLabel":{"shape":"ConnectorLabel"}, "triggerType":{"shape":"TriggerType"}, "createdAt":{"shape":"Date"}, "lastUpdatedAt":{"shape":"Date"}, @@ -1292,7 +1683,6 @@ "IdFieldNameList":{ "type":"list", "member":{"shape":"Name"}, - "max":1, "min":0 }, "Identifier":{ @@ -1389,12 +1779,20 @@ "max":128, "pattern":".*" }, + "LambdaConnectorProvisioningConfig":{ + "type":"structure", + "required":["lambdaArn"], + "members":{ + "lambdaArn":{"shape":"ARN"} + } + }, "ListConnectorEntitiesRequest":{ "type":"structure", "members":{ "connectorProfileName":{"shape":"ConnectorProfileName"}, "connectorType":{"shape":"ConnectorType"}, - "entitiesPath":{"shape":"EntitiesPath"} + "entitiesPath":{"shape":"EntitiesPath"}, + "apiVersion":{"shape":"ApiVersion"} } }, "ListConnectorEntitiesResponse":{ @@ -1404,6 +1802,20 @@ "connectorEntityMap":{"shape":"ConnectorEntityMap"} } }, + "ListConnectorsRequest":{ + "type":"structure", + "members":{ + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListConnectorsResponse":{ + "type":"structure", + "members":{ + "connectors":{"shape":"ConnectorList"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListFlowsRequest":{ "type":"structure", "members":{ @@ -1435,6 +1847,11 @@ "tags":{"shape":"TagMap"} } }, + "LogoURL":{ + "type":"string", + "max":256, + "pattern":"^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]" + }, "LogonLanguage":{ "type":"string", "max":2, @@ -1519,6 +1936,47 @@ "max":2048, "pattern":"\\S+" }, + "OAuth2Credentials":{ + "type":"structure", + "members":{ + "clientId":{"shape":"ClientId"}, + "clientSecret":{"shape":"ClientSecret"}, + "accessToken":{"shape":"AccessToken"}, + "refreshToken":{"shape":"RefreshToken"}, + "oAuthRequest":{"shape":"ConnectorOAuthRequest"} + } + }, + "OAuth2Defaults":{ + "type":"structure", + "members":{ + "oauthScopes":{"shape":"OAuthScopeList"}, + "tokenUrls":{"shape":"TokenUrlList"}, + "authCodeUrls":{"shape":"AuthCodeUrlList"}, + "oauth2GrantTypesSupported":{"shape":"OAuth2GrantTypeSupportedList"} + } + }, + "OAuth2GrantType":{ + "type":"string", + "enum":[ + "CLIENT_CREDENTIALS", + "AUTHORIZATION_CODE" + ] + }, + "OAuth2GrantTypeSupportedList":{ + "type":"list", + "member":{"shape":"OAuth2GrantType"} + }, + "OAuth2Properties":{ + "type":"structure", + "required":[ + "tokenUrl", + "oAuth2GrantType" + ], + "members":{ + "tokenUrl":{"shape":"TokenUrl"}, + "oAuth2GrantType":{"shape":"OAuth2GrantType"} + } + }, "OAuthCredentials":{ "type":"structure", "required":[ @@ -1549,7 +2007,7 @@ "OAuthScope":{ "type":"string", "max":128, - "pattern":"[/\\w]*" + "pattern":"\\S+" }, "OAuthScopeList":{ "type":"list", @@ -1611,6 +2069,32 @@ "EXCLUDE_SOURCE_FIELDS_LIST" ] }, + "Operators":{ + "type":"string", + "enum":[ + "PROJECTION", + "LESS_THAN", + "GREATER_THAN", + "CONTAINS", + "BETWEEN", + "LESS_THAN_OR_EQUAL_TO", + "GREATER_THAN_OR_EQUAL_TO", + "EQUAL_TO", + "NOT_EQUAL_TO", + "ADDITION", + "MULTIPLICATION", + "DIVISION", + "SUBTRACTION", + "MASK_ALL", + "MASK_FIRST_N", + "MASK_LAST_N", + "VALIDATE_NON_NULL", + "VALIDATE_NON_ZERO", + "VALIDATE_NON_NEGATIVE", + "VALIDATE_NUMERIC", + "NO_OP" + ] + }, "Password":{ "type":"string", "max":512, @@ -1683,11 +2167,36 @@ "max":512, "pattern":"^$|com.amazonaws.vpce.[\\w/!:@#.\\-]+" }, + "ProfilePropertiesMap":{ + "type":"map", + "key":{"shape":"ProfilePropertyKey"}, + "value":{"shape":"ProfilePropertyValue"}, + "max":50, + "min":0 + }, + "ProfilePropertyKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[\\w]+" + }, + "ProfilePropertyValue":{ + "type":"string", + "max":2048, + "pattern":"\\S+" + }, "Property":{ "type":"string", "max":2048, "pattern":".+" }, + "Range":{ + "type":"structure", + "members":{ + "maximum":{"shape":"Double"}, + "minimum":{"shape":"Double"} + } + }, "RedirectUri":{ "type":"string", "max":512, @@ -1738,7 +2247,7 @@ }, "RefreshToken":{ "type":"string", - "max":512, + "max":1024, "pattern":"\\S+" }, "Region":{ @@ -1750,6 +2259,26 @@ "type":"list", "member":{"shape":"Region"} }, + "RegisterConnectorRequest":{ + "type":"structure", + "members":{ + "connectorLabel":{"shape":"ConnectorLabel"}, + "description":{"shape":"Description"}, + "connectorProvisioningType":{"shape":"ConnectorProvisioningType"}, + "connectorProvisioningConfig":{"shape":"ConnectorProvisioningConfig"} + } + }, + "RegisterConnectorResponse":{ + "type":"structure", + "members":{ + "connectorArn":{"shape":"ARN"} + } + }, + "RegisteredBy":{ + "type":"string", + "max":512, + "pattern":"\\S+" + }, "ResourceNotFoundException":{ "type":"structure", "members":{ @@ -2239,14 +2768,16 @@ "Trendmicro":{"shape":"TrendmicroSourceProperties"}, "Veeva":{"shape":"VeevaSourceProperties"}, "Zendesk":{"shape":"ZendeskSourceProperties"}, - "SAPOData":{"shape":"SAPODataSourceProperties"} + "SAPOData":{"shape":"SAPODataSourceProperties"}, + "CustomConnector":{"shape":"CustomConnectorSourceProperties"} } }, "SourceFieldProperties":{ "type":"structure", "members":{ "isRetrievable":{"shape":"Boolean"}, - "isQueryable":{"shape":"Boolean"} + "isQueryable":{"shape":"Boolean"}, + "isTimestampFieldForIncrementalQueries":{"shape":"Boolean"} } }, "SourceFields":{ @@ -2261,6 +2792,7 @@ ], "members":{ "connectorType":{"shape":"ConnectorType"}, + "apiVersion":{"shape":"ApiVersion"}, "connectorProfileName":{"shape":"ConnectorProfileName"}, "sourceConnectorProperties":{"shape":"SourceConnectorProperties"}, "incrementalPullConfig":{"shape":"IncrementalPullConfig"} @@ -2305,6 +2837,15 @@ "max":2048, "pattern":".*" }, + "SupportedApiVersion":{ + "type":"string", + "max":256, + "pattern":"\\S+" + }, + "SupportedApiVersionList":{ + "type":"list", + "member":{"shape":"SupportedApiVersion"} + }, "SupportedFieldTypeDetails":{ "type":"structure", "required":["v1"], @@ -2312,6 +2853,10 @@ "v1":{"shape":"FieldTypeDetails"} } }, + "SupportedOperatorList":{ + "type":"list", + "member":{"shape":"Operators"} + }, "SupportedValueList":{ "type":"list", "member":{"shape":"Value"} @@ -2400,6 +2945,14 @@ "type":"list", "member":{"shape":"Task"} }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "message":{"shape":"ErrorMessage"} + }, + "error":{"httpStatusCode":429}, + "exception":true + }, "Timezone":{ "type":"string", "max":256, @@ -2410,6 +2963,10 @@ "max":256, "pattern":"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]" }, + "TokenUrlList":{ + "type":"list", + "member":{"shape":"TokenUrl"} + }, "TrendmicroConnectorOperator":{ "type":"string", "enum":[ @@ -2479,6 +3036,19 @@ "type":"list", "member":{"shape":"TriggerType"} }, + "UnregisterConnectorRequest":{ + "type":"structure", + "required":["connectorLabel"], + "members":{ + "connectorLabel":{"shape":"ConnectorLabel"}, + "forceDelete":{"shape":"Boolean"} + } + }, + "UnregisterConnectorResponse":{ + "type":"structure", + "members":{ + } + }, "UnsupportedOperationException":{ "type":"structure", "members":{ @@ -2679,7 +3249,8 @@ "enum":[ "INSERT", "UPSERT", - "UPDATE" + "UPDATE", + "DELETE" ] }, "ZendeskConnectorOperator":{ diff --git a/models/apis/appflow/2020-08-23/docs-2.json b/models/apis/appflow/2020-08-23/docs-2.json index 8829c6f1aaa..ab7643d236a 100644 --- a/models/apis/appflow/2020-08-23/docs-2.json +++ b/models/apis/appflow/2020-08-23/docs-2.json @@ -6,17 +6,21 @@ "CreateFlow": "
Enables your application to create a new flow using Amazon AppFlow. You must create a connector profile before calling this API. Please note that the Request Syntax below shows syntax for multiple destinations, however, you can only transfer data to one item in this list at a time. Amazon AppFlow does not currently support flows to multiple destinations at once.
", "DeleteConnectorProfile": "Enables you to delete an existing connector profile.
", "DeleteFlow": "Enables your application to delete an existing flow. Before deleting the flow, Amazon AppFlow validates the request by checking the flow configuration and status. You can delete flows one at a time.
", + "DescribeConnector": "Describes the given custom connector registered in your Amazon Web Services account. This API can be used for custom connectors that are registered in your account and also for Amazon authored connectors.
", "DescribeConnectorEntity": "Provides details regarding the entity used with the connector, with a description of the data model for each entity.
", "DescribeConnectorProfiles": " Returns a list of connector-profile
details matching the provided connector-profile
names and connector-types
. Both input lists are optional, and you can use them to filter the result.
If no names or connector-types
are provided, returns all connector profiles in a paginated form. If there is no match, this operation returns an empty list.
Describes the connectors vended by Amazon AppFlow for specified connector types. If you don't specify a connector type, this operation describes all connectors vended by Amazon AppFlow. If there are more connectors than can be returned in one page, the response contains a nextToken
object, which can be be passed in to the next call to the DescribeConnectors
API operation to retrieve the next page.
Provides a description of the specified flow.
", "DescribeFlowExecutionRecords": "Fetches the execution history of the flow.
", "ListConnectorEntities": "Returns the list of available connector entities supported by Amazon AppFlow. For example, you can query Salesforce for Account and Opportunity entities, or query ServiceNow for the Incident entity.
", + "ListConnectors": "Returns the list of all registered custom connectors in your Amazon Web Services account. This API lists only custom connectors registered in this account, not the Amazon Web Services authored connectors.
", "ListFlows": "Lists all of the flows associated with your account.
", "ListTagsForResource": "Retrieves the tags that are associated with a specified flow.
", + "RegisterConnector": "Registers a new connector with your Amazon Web Services account. Before you can register the connector, you must deploy lambda in your account.
", "StartFlow": "Activates an existing flow. For on-demand flows, this operation runs the flow immediately. For schedule and event-triggered flows, this operation activates the flow.
", "StopFlow": " Deactivates the existing flow. For on-demand flows, this operation returns an unsupportedOperationException
error message. For schedule and event-triggered flows, this operation deactivates the flow.
Applies a tag to the specified flow.
", + "UnregisterConnector": "Unregisters the custom connector registered in your account that matches the connectorLabel provided in the request.
", "UntagResource": "Removes a tag from the specified flow.
", "UpdateConnectorProfile": "Updates a given connector profile associated with your account.
", "UpdateFlow": "Updates an existing flow.
" @@ -25,12 +29,20 @@ "ARN": { "base": null, "refs": { + "ConnectorConfiguration$connectorArn": "The Amazon Resource Name (ARN) for the registered connector.
", "ConnectorProfile$credentialsArn": "The Amazon Resource Name (ARN) of the connector profile credentials.
", + "LambdaConnectorProvisioningConfig$lambdaArn": "Lambda ARN of the connector being registered.
", "ListTagsForResourceRequest$resourceArn": "The Amazon Resource Name (ARN) of the specified flow.
", + "RegisterConnectorResponse$connectorArn": "The ARN of the connector being registered.
", "TagResourceRequest$resourceArn": "The Amazon Resource Name (ARN) of the flow that you want to tag.
", "UntagResourceRequest$resourceArn": "The Amazon Resource Name (ARN) of the flow that you want to untag.
" } }, + "AccessDeniedException": { + "base": "AppFlow/Requester has invalid or missing permissions.
", + "refs": { + } + }, "AccessKeyId": { "base": null, "refs": { @@ -43,6 +55,7 @@ "GoogleAnalyticsConnectorProfileCredentials$accessToken": "The credentials used to access protected Google Analytics resources.
", "HoneycodeConnectorProfileCredentials$accessToken": "The credentials used to access protected Amazon Honeycode resources.
", "MarketoConnectorProfileCredentials$accessToken": "The credentials used to access protected Marketo resources.
", + "OAuth2Credentials$accessToken": "The access token used to access the connector on your behalf.
", "OAuthCredentials$accessToken": "The access token used to access protected SAPOData resources.
", "SalesforceConnectorProfileCredentials$accessToken": "The credentials used to access protected Salesforce resources.
", "SlackConnectorProfileCredentials$accessToken": "The credentials used to access protected Slack resources.
", @@ -102,13 +115,21 @@ "base": null, "refs": { "AmplitudeConnectorProfileCredentials$apiKey": "A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
", + "ApiKeyCredentials$apiKey": "The API key required for API key authentication.
", "DatadogConnectorProfileCredentials$apiKey": "A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
", "SingularConnectorProfileCredentials$apiKey": "A unique alphanumeric identifier used to authenticate a user, developer, or calling program to your API.
" } }, + "ApiKeyCredentials": { + "base": "The API key credentials required for API key authentication.
", + "refs": { + "CustomConnectorProfileCredentials$apiKey": "The API keys required for the authentication of the user.
" + } + }, "ApiSecretKey": { "base": null, "refs": { + "ApiKeyCredentials$apiSecretKey": "The API secret key required for API key authentication.
", "TrendmicroConnectorProfileCredentials$apiSecretKey": "The Secret Access Key portion of the credentials.
" } }, @@ -118,6 +139,15 @@ "DynatraceConnectorProfileCredentials$apiToken": "The API tokens used by Dynatrace API to authenticate various API calls.
" } }, + "ApiVersion": { + "base": null, + "refs": { + "DescribeConnectorEntityRequest$apiVersion": "The version of the API that's used by the connector.
", + "DestinationFlowConfig$apiVersion": "The API version that the destination connector uses.
", + "ListConnectorEntitiesRequest$apiVersion": "The version of the API that's used by the connector.
", + "SourceFlowConfig$apiVersion": "The API version of the connector when it's used as a source in the flow.
" + } + }, "ApplicationHostUrl": { "base": null, "refs": { @@ -136,6 +166,12 @@ "SAPODataConnectorProfileProperties$applicationServicePath": "The application path to catalog service.
" } }, + "ApplicationType": { + "base": null, + "refs": { + "ConnectorDetail$applicationType": "The application type of the connector.
" + } + }, "AuthCode": { "base": null, "refs": { @@ -145,35 +181,79 @@ "AuthCodeUrl": { "base": null, "refs": { + "AuthCodeUrlList$member": null, "OAuthProperties$authCodeUrl": "The authorization code url required to redirect to SAP Login Page to fetch authorization code for OAuth type authentication.
" } }, + "AuthCodeUrlList": { + "base": null, + "refs": { + "OAuth2Defaults$authCodeUrls": "Auth code URLs that can be used for OAuth 2.0 authentication.
" + } + }, + "AuthParameter": { + "base": "Information about required authentication parameters.
", + "refs": { + "AuthParameterList$member": null + } + }, + "AuthParameterList": { + "base": null, + "refs": { + "CustomAuthConfig$authParameters": "Information about authentication parameters required for authentication.
" + } + }, + "AuthenticationConfig": { + "base": "Contains information about the authentication config that the connector supports.
", + "refs": { + "ConnectorConfiguration$authenticationConfig": "The authentication config required for the connector.
" + } + }, + "AuthenticationType": { + "base": null, + "refs": { + "CustomConnectorProfileCredentials$authenticationType": "The authentication type that the custom connector uses for authenticating while creating a connector profile.
" + } + }, "BasicAuthCredentials": { "base": "The basic auth credentials required for basic authentication.
", "refs": { + "CustomConnectorProfileCredentials$basic": "The basic credentials that are required for the authentication of the user.
", "SAPODataConnectorProfileCredentials$basicAuthCredentials": "The SAPOData basic authentication credentials.
" } }, "Boolean": { "base": null, "refs": { + "AuthParameter$isRequired": "Indicates whether this authentication parameter is required.
", + "AuthParameter$isSensitiveField": "Indicates whether this authentication parameter is a sensitive field.
", + "AuthenticationConfig$isBasicAuthSupported": "Indicates whether basic authentication is supported by the connector.
", + "AuthenticationConfig$isApiKeyAuthSupported": "Indicates whether API key authentication is supported by the connector
", + "AuthenticationConfig$isOAuth2Supported": "Indicates whether OAuth 2.0 authentication is supported by the connector.
", + "AuthenticationConfig$isCustomAuthSupported": "Indicates whether custom authentication is supported by the connector
", "ConnectorConfiguration$canUseAsSource": "Specifies whether the connector can be used as a source.
", "ConnectorConfiguration$canUseAsDestination": "Specifies whether the connector can be used as a destination.
", "ConnectorConfiguration$isPrivateLinkEnabled": "Specifies if PrivateLink is enabled for that connector.
", "ConnectorConfiguration$isPrivateLinkEndpointUrlRequired": "Specifies if a PrivateLink endpoint URL is required.
", "ConnectorEntity$hasNestedEntities": " Specifies whether the connector entity is a parent or a category and has more entities nested underneath it. If another call is made with entitiesPath = \"the_current_entity_name_with_hasNestedEntities_true\"
, then it returns the nested entities underneath it. This provides a way to retrieve all supported entities in a recursive fashion.
Booelan value that indicates whether this field can be used as a primary key.
", + "ConnectorEntityField$isDeprecated": "Booelan value that indicates whether this field is deprecated or not.
", + "ConnectorRuntimeSetting$isRequired": "Indicates whether this connector runtime setting is required.
", "DeleteConnectorProfileRequest$forceDelete": "Indicates whether Amazon AppFlow should delete the profile, even if it is currently in use in one or more flows.
", "DeleteFlowRequest$forceDelete": "Indicates whether Amazon AppFlow should delete the flow, even if it is currently in use.
", "DestinationFieldProperties$isCreatable": "Specifies if the destination field can be created by the current user.
", "DestinationFieldProperties$isNullable": "Specifies if the destination field can have a null value.
", "DestinationFieldProperties$isUpsertable": "Specifies if the flow run can either insert new rows in the destination field if they do not already exist, or update them if they do.
", "DestinationFieldProperties$isUpdatable": " Specifies whether the field can be updated during an UPDATE
or UPSERT
write operation.
Specifies whether the field can use the default value during a Create operation.
", "ErrorHandlingConfig$failOnFirstDestinationError": "Specifies if the flow should fail after the first instance of a failure when attempting to place data in the destination.
", "SalesforceConnectorProfileProperties$isSandboxEnvironment": "Indicates whether the connector profile applies to a sandbox or production environment.
", "SalesforceSourceProperties$enableDynamicFieldUpdate": "The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.
", "SalesforceSourceProperties$includeDeletedRecords": "Indicates whether Amazon AppFlow includes deleted files in the flow run.
", "SourceFieldProperties$isRetrievable": "Indicates whether the field can be returned in a search result.
", "SourceFieldProperties$isQueryable": "Indicates if the field can be queried.
", + "SourceFieldProperties$isTimestampFieldForIncrementalQueries": "Indicates if this timestamp field can be used for incremental queries.
", + "UnregisterConnectorRequest$forceDelete": "Indicates whether Amazon AppFlow should unregister the connector, even if it is currently in use in one or more connector profiles. The default value is false.
", "VeevaSourceProperties$includeSourceFiles": "Boolean value to include source files in Veeva document extract flow.
", "VeevaSourceProperties$includeRenditions": "Boolean value to include file renditions in Veeva document extract flow.
", "VeevaSourceProperties$includeAllVersions": "Boolean value to include All Versions of files in Veeva document extract flow.
" @@ -215,6 +295,7 @@ "refs": { "GoogleAnalyticsConnectorProfileCredentials$clientId": "The identifier for the desired client.
", "MarketoConnectorProfileCredentials$clientId": "The identifier for the desired client.
", + "OAuth2Credentials$clientId": "The identifier for the desired client.
", "OAuthCredentials$clientId": "The identifier for the desired client.
", "SlackConnectorProfileCredentials$clientId": "The identifier for the client.
", "ZendeskConnectorProfileCredentials$clientId": "The identifier for the desired client.
" @@ -231,6 +312,7 @@ "refs": { "GoogleAnalyticsConnectorProfileCredentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
", "MarketoConnectorProfileCredentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
", + "OAuth2Credentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
", "OAuthCredentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
", "SlackConnectorProfileCredentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
", "ZendeskConnectorProfileCredentials$clientSecret": "The client secret used by the OAuth client to authenticate to the authorization server.
" @@ -257,7 +339,8 @@ "ConnectorConfiguration": { "base": "The configuration settings related to a given connector.
", "refs": { - "ConnectorConfigurationsMap$value": null + "ConnectorConfigurationsMap$value": null, + "DescribeConnectorResponse$connectorConfiguration": "Configuration info of all the connectors that the user requested.
" } }, "ConnectorConfigurationsMap": { @@ -266,6 +349,19 @@ "DescribeConnectorsResponse$connectorConfigurations": "The configuration that is applied to the connectors used in the flow.
" } }, + "ConnectorDescription": { + "base": null, + "refs": { + "ConnectorConfiguration$connectorDescription": "A description about the connector.
", + "ConnectorDetail$connectorDescription": "A description about the registered connector.
" + } + }, + "ConnectorDetail": { + "base": "Information about the registered connector.
", + "refs": { + "ConnectorList$member": null + } + }, "ConnectorEntity": { "base": "The high-level entity that can be queried in Amazon AppFlow. For example, a Salesforce entity might be an Account or Opportunity, whereas a ServiceNow entity might be an Incident.
", "refs": { @@ -296,18 +392,61 @@ "ListConnectorEntitiesResponse$connectorEntityMap": " The response of ListConnectorEntities
lists entities grouped by category. This map's key represents the group name, and its value contains the list of entities belonging to that group.
The label used for registering the connector.
", + "ConnectorDetail$connectorLabel": "A label used for the connector.
", + "ConnectorProfile$connectorLabel": "The label for the connector profile being created.
", + "CreateConnectorProfileRequest$connectorLabel": "The label of the connector. The label is unique for each ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.
The name of the connector. The name is unique for each ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.
The label of the connector. The label is unique for each ConnectorRegistration
in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR connector type/.
The label of the source connector in the flow.
", + "FlowDefinition$destinationConnectorLabel": "The label of the destination connector in the flow.
", + "RegisterConnectorRequest$connectorLabel": " The name of the connector. The name is unique for each ConnectorRegistration
in your Amazon Web Services account.
The label of the connector. The label is unique for each ConnectorRegistration
in your Amazon Web Services account.
Information about the connectors supported in Amazon AppFlow.
", + "ListConnectorsResponse$connectors": "Contains information about the connectors supported by Amazon AppFlow.
" + } + }, "ConnectorMetadata": { "base": " A structure to specify connector-specific metadata such as oAuthScopes
, supportedRegions
, privateLinkServiceUrl
, and so on.
Specifies connector-specific metadata such as oAuthScopes
, supportedRegions
, privateLinkServiceUrl
, and so on.
The connection modes that the connector supports.
", + "ConnectorDetail$connectorModes": "The connection mode that the connector supports.
" + } + }, + "ConnectorName": { + "base": null, + "refs": { + "ConnectorConfiguration$connectorName": "The connector name.
", + "ConnectorDetail$connectorName": "The name of the connector.
" + } + }, "ConnectorOAuthRequest": { "base": "Used by select connectors for which the OAuth workflow is supported, such as Salesforce, Google Analytics, Marketo, Zendesk, and Slack.
", "refs": { "GoogleAnalyticsConnectorProfileCredentials$oAuthRequest": "The OAuth requirement needed to request security tokens from the connector endpoint.
", "HoneycodeConnectorProfileCredentials$oAuthRequest": null, "MarketoConnectorProfileCredentials$oAuthRequest": "The OAuth requirement needed to request security tokens from the connector endpoint.
", + "OAuth2Credentials$oAuthRequest": null, "OAuthCredentials$oAuthRequest": "The OAuth requirement needed to request security tokens from the connector endpoint.
", "SalesforceConnectorProfileCredentials$oAuthRequest": "The OAuth requirement needed to request security tokens from the connector endpoint.
", "SlackConnectorProfileCredentials$oAuthRequest": "The OAuth requirement needed to request security tokens from the connector endpoint.
", @@ -320,6 +459,13 @@ "Task$connectorOperator": "The operation to be performed on the provided source fields.
" } }, + "ConnectorOwner": { + "base": null, + "refs": { + "ConnectorConfiguration$connectorOwner": "The owner who developed the connector.
", + "ConnectorDetail$connectorOwner": "The owner of the connector.
" + } + }, "ConnectorProfile": { "base": " Describes an instance of a connector. This includes the provided name, credentials ARN, connection-mode, and so on. To keep the API intuitive and extensible, the fields that are common to all types of connector profiles are explicitly specified at the top level. The rest of the connector-specific properties are available via the connectorProfileProperties
field.
The connector-specific properties of the profile configuration.
" } }, + "ConnectorProvisioningConfig": { + "base": "Contains information about the configuration of the connector being registered.
", + "refs": { + "ConnectorConfiguration$connectorProvisioningConfig": "The configuration required for registering the connector.
", + "RegisterConnectorRequest$connectorProvisioningConfig": "The provisioning type of the connector. Currently the only supported value is LAMBDA.
" + } + }, + "ConnectorProvisioningType": { + "base": "The type of provisioning that the connector supports, such as Lambda.
", + "refs": { + "ConnectorConfiguration$connectorProvisioningType": "The provisioning type used to register the connector.
", + "ConnectorDetail$connectorProvisioningType": "The provisioning type that the connector uses.
", + "RegisterConnectorRequest$connectorProvisioningType": "The provisioning type of the connector. Currently the only supported value is LAMBDA.
" + } + }, + "ConnectorRuntimeSetting": { + "base": "Contains information about the connector runtime settings that are required for flow execution.
", + "refs": { + "ConnectorRuntimeSettingList$member": null + } + }, + "ConnectorRuntimeSettingDataType": { + "base": null, + "refs": { + "ConnectorRuntimeSetting$dataType": "Data type of the connector runtime setting.
" + } + }, + "ConnectorRuntimeSettingList": { + "base": null, + "refs": { + "ConnectorConfiguration$connectorRuntimeSettings": "The required connector runtime settings.
" + } + }, + "ConnectorRuntimeSettingScope": { + "base": null, + "refs": { + "ConnectorRuntimeSetting$scope": "Indicates the scope of the connector runtime setting.
" + } + }, "ConnectorServerException": { "base": "An error occurred when retrieving data from the connector endpoint.
", "refs": { } }, + "ConnectorSuppliedValue": { + "base": null, + "refs": { + "ConnectorSuppliedValueList$member": null, + "ConnectorSuppliedValueOptionList$member": null + } + }, + "ConnectorSuppliedValueList": { + "base": null, + "refs": { + "AuthParameter$connectorSuppliedValues": "Contains default values for this authentication parameter that are supplied by the connector.
" + } + }, + "ConnectorSuppliedValueOptionList": { + "base": null, + "refs": { + "ConnectorRuntimeSetting$connectorSuppliedValueOptions": "Contains default values for the connector runtime setting that are supplied by the connector.
" + } + }, "ConnectorType": { "base": null, "refs": { + "ConnectorConfiguration$connectorType": "The connector type.
", "ConnectorConfigurationsMap$key": null, + "ConnectorDetail$connectorType": "The connector type.
", "ConnectorProfile$connectorType": "The type of connector, such as Salesforce, Amplitude, and so on.
", "ConnectorTypeList$member": null, "CreateConnectorProfileRequest$connectorType": "The type of connector, such as Salesforce, Amplitude, and so on.
", "DescribeConnectorEntityRequest$connectorType": "The type of connector application, such as Salesforce, Amplitude, and so on.
", "DescribeConnectorProfilesRequest$connectorType": "The type of connector, such as Salesforce, Amplitude, and so on.
", + "DescribeConnectorRequest$connectorType": "The connector type, such as CUSTOMCONNECTOR, Saleforce, Marketo. Please choose CUSTOMCONNECTOR for Lambda based custom connectors.
", "DestinationFlowConfig$connectorType": "The type of connector, such as Salesforce, Amplitude, and so on.
", "FlowDefinition$sourceConnectorType": "Specifies the source connector type, such as Salesforce, Amazon S3, Amplitude, and so on.
", "FlowDefinition$destinationConnectorType": "Specifies the destination connector type, such as Salesforce, Amazon S3, Amplitude, and so on.
", @@ -408,6 +615,13 @@ "DescribeConnectorsRequest$connectorTypes": "The type of connector, such as Salesforce, Amplitude, and so on.
" } }, + "ConnectorVersion": { + "base": null, + "refs": { + "ConnectorConfiguration$connectorVersion": "The connector version.
", + "ConnectorDetail$connectorVersion": "The connector version.
" + } + }, "CreateConnectorProfileRequest": { "base": null, "refs": { @@ -435,6 +649,93 @@ "FlowDefinition$createdBy": "The ARN of the user who created the flow.
" } }, + "CredentialsMap": { + "base": null, + "refs": { + "CustomAuthCredentials$credentialsMap": "A map that holds custom authentication credentials.
" + } + }, + "CredentialsMapKey": { + "base": null, + "refs": { + "CredentialsMap$key": null + } + }, + "CredentialsMapValue": { + "base": null, + "refs": { + "CredentialsMap$value": null + } + }, + "CustomAuthConfig": { + "base": "Configuration information required for custom authentication.
", + "refs": { + "CustomAuthConfigList$member": null + } + }, + "CustomAuthConfigList": { + "base": null, + "refs": { + "AuthenticationConfig$customAuthConfigs": "Contains information required for custom authentication.
" + } + }, + "CustomAuthCredentials": { + "base": "The custom credentials required for custom authentication.
", + "refs": { + "CustomConnectorProfileCredentials$custom": "If the connector uses the custom authentication mechanism, this holds the required credentials.
" + } + }, + "CustomAuthenticationType": { + "base": null, + "refs": { + "CustomAuthConfig$customAuthenticationType": "The authentication type that the custom connector uses.
", + "CustomAuthCredentials$customAuthenticationType": "The custom authentication type that the connector uses.
" + } + }, + "CustomConnectorDestinationProperties": { + "base": "The properties that are applied when the custom connector is being used as a destination.
", + "refs": { + "DestinationConnectorProperties$CustomConnector": "The properties that are required to query the custom Connector.
" + } + }, + "CustomConnectorProfileCredentials": { + "base": "The connector-specific profile credentials that are required when using the custom connector.
", + "refs": { + "ConnectorProfileCredentials$CustomConnector": null + } + }, + "CustomConnectorProfileProperties": { + "base": "The profile properties required by the custom connector.
", + "refs": { + "ConnectorProfileProperties$CustomConnector": "The properties required by the custom connector.
" + } + }, + "CustomConnectorSourceProperties": { + "base": "The properties that are applied when the custom connector is being used as a source.
", + "refs": { + "SourceConnectorProperties$CustomConnector": null + } + }, + "CustomProperties": { + "base": null, + "refs": { + "ConnectorEntityField$customProperties": "A map that has specific properties related to the ConnectorEntityField.
", + "CustomConnectorDestinationProperties$customProperties": "The custom properties that are specific to the connector when it's used as a destination in the flow.
", + "CustomConnectorSourceProperties$customProperties": "Custom properties that are required to use the custom connector as a source.
" + } + }, + "CustomPropertyKey": { + "base": null, + "refs": { + "CustomProperties$key": null + } + }, + "CustomPropertyValue": { + "base": null, + "refs": { + "CustomProperties$value": null + } + }, "CustomerProfilesDestinationProperties": { "base": "The properties that are applied when Amazon Connect Customer Profiles is used as a destination.
", "refs": { @@ -492,6 +793,8 @@ "Date": { "base": null, "refs": { + "ConnectorConfiguration$registeredAt": "The date on which the connector was registered.
", + "ConnectorDetail$registeredAt": "The time at which the connector was registered.
", "ConnectorProfile$createdAt": "Specifies when the connector profile was created.
", "ConnectorProfile$lastUpdatedAt": "Specifies when the connector profile was last updated.
", "DescribeFlowResponse$createdAt": "Specifies when the flow was created.
", @@ -554,6 +857,16 @@ "refs": { } }, + "DescribeConnectorRequest": { + "base": null, + "refs": { + } + }, + "DescribeConnectorResponse": { + "base": null, + "refs": { + } + }, "DescribeConnectorsRequest": { "base": null, "refs": { @@ -587,7 +900,10 @@ "Description": { "base": null, "refs": { - "ConnectorEntityField$description": "A description of the connector entity field.
" + "AuthParameter$description": "A description about the authentication parameter.
", + "ConnectorEntityField$description": "A description of the connector entity field.
", + "ConnectorRuntimeSetting$description": "A description about the connector runtime setting.
", + "RegisterConnectorRequest$description": "A description about the connector that's being registered.
" } }, "DestinationConnectorProperties": { @@ -634,6 +950,13 @@ "CustomerProfilesDestinationProperties$domainName": "The unique name of the Amazon Connect Customer Profiles domain.
" } }, + "Double": { + "base": null, + "refs": { + "Range$maximum": "Maximum value supported by the field.
", + "Range$minimum": "Minimum value supported by the field.
" + } + }, "DynatraceConnectorOperator": { "base": null, "refs": { @@ -670,9 +993,18 @@ "ListConnectorEntitiesRequest$entitiesPath": " This optional parameter is specific to connector implementation. Some connectors support multiple levels or categories of entities. You can find out the list of roots for such providers by sending a request without the entitiesPath
parameter. If the connector supports entities at different roots, this initial request returns the list of roots. Otherwise, this request returns all entities supported by the provider.
The entity specified in the custom connector as a destination in the flow.
", + "CustomConnectorSourceProperties$entityName": "The entity specified in the custom connector as a source in the flow.
", + "DescribeConnectorEntityRequest$connectorEntityName": "The entity name for that connector.
" + } + }, "ErrorHandlingConfig": { "base": " The settings that determine how Amazon AppFlow handles an error when placing data in the destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig
is a part of the destination connector details.
The settings that determine how Amazon AppFlow handles an error when placing data in the custom connector as destination.
", "EventBridgeDestinationProperties$errorHandlingConfig": null, "HoneycodeDestinationProperties$errorHandlingConfig": null, "RedshiftDestinationProperties$errorHandlingConfig": " The settings that determine how Amazon AppFlow handles an error when placing data in the Amazon Redshift destination. For example, this setting would determine if the flow should fail after one insertion error, or continue and attempt to insert every record regardless of the initial failure. ErrorHandlingConfig
is a part of the destination connector details.
A list of field names that can be used as an ID field when performing a write operation.
", "refs": { + "CustomConnectorDestinationProperties$idFieldNames": "The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update, delete, or upsert.
", "SalesforceDestinationProperties$idFieldNames": "The name of the field that Amazon AppFlow uses as an ID when performing a write operation such as update or delete.
", "ZendeskDestinationProperties$idFieldNames": null } @@ -914,7 +1249,8 @@ "Identifier": { "base": null, "refs": { - "ConnectorEntityField$identifier": "The unique identifier of the connector field.
" + "ConnectorEntityField$identifier": "The unique identifier of the connector field.
", + "ConnectorEntityField$parentIdentifier": "The parent identifier of the connector field.
" } }, "IncrementalPullConfig": { @@ -983,6 +1319,8 @@ "Key": { "base": null, "refs": { + "AuthParameter$key": "The authentication key required to authenticate with the connector.
", + "ConnectorRuntimeSetting$key": "Contains value information about the connector runtime setting.
", "InforNexusConnectorProfileCredentials$secretAccessKey": "The secret key used to sign requests.
", "InforNexusConnectorProfileCredentials$datakey": "The encryption keys used to encrypt data.
" } @@ -990,8 +1328,16 @@ "Label": { "base": null, "refs": { + "AuthParameter$label": "Label used for authentication parameter.
", "ConnectorEntity$label": "The label applied to the connector entity.
", - "ConnectorEntityField$label": "The label applied to a connector entity field.
" + "ConnectorEntityField$label": "The label applied to a connector entity field.
", + "ConnectorRuntimeSetting$label": "A label used for connector runtime setting.
" + } + }, + "LambdaConnectorProvisioningConfig": { + "base": "Contains information about the configuration of the lambda which is being registered as the connector.
", + "refs": { + "ConnectorProvisioningConfig$lambda": "Contains information about the configuration of the lambda which is being registered as the connector.
" } }, "ListConnectorEntitiesRequest": { @@ -1004,6 +1350,16 @@ "refs": { } }, + "ListConnectorsRequest": { + "base": null, + "refs": { + } + }, + "ListConnectorsResponse": { + "base": null, + "refs": { + } + }, "ListFlowsRequest": { "base": null, "refs": { @@ -1024,6 +1380,12 @@ "refs": { } }, + "LogoURL": { + "base": null, + "refs": { + "ConnectorConfiguration$logoURL": "Logo URL of the connector.
" + } + }, "LogonLanguage": { "base": null, "refs": { @@ -1079,7 +1441,9 @@ "base": null, "refs": { "DescribeConnectorProfilesRequest$maxResults": " Specifies the maximum number of items that should be returned in the result set. The default for maxResults
is 20 (for all paginated API operations).
The maximum number of items that should be returned in the result set. The default is 20.
", "DescribeFlowExecutionRecordsRequest$maxResults": " Specifies the maximum number of items that should be returned in the result set. The default for maxResults
is 20 (for all paginated API operations).
Specifies the maximum number of items that should be returned in the result set. The default for maxResults
is 20 (for all paginated API operations).
Specifies the maximum number of items that should be returned in the result set.
" } }, @@ -1093,7 +1457,6 @@ "base": null, "refs": { "ConnectorEntity$name": "The name of the connector entity.
", - "DescribeConnectorEntityRequest$connectorEntityName": "The entity name for that connector.
", "IdFieldNameList$member": null } }, @@ -1106,10 +1469,43 @@ "DescribeConnectorsResponse$nextToken": "The pagination token for the next page of data.
", "DescribeFlowExecutionRecordsRequest$nextToken": "The pagination token for the next page of data.
", "DescribeFlowExecutionRecordsResponse$nextToken": "The pagination token for the next page of data.
", + "ListConnectorsRequest$nextToken": "The pagination token for the next page of data.
", + "ListConnectorsResponse$nextToken": "The pagination token for the next page of data. If nextToken=null, this means that all records have been fetched.
", "ListFlowsRequest$nextToken": "The pagination token for next page of data.
", "ListFlowsResponse$nextToken": "The pagination token for next page of data.
" } }, + "OAuth2Credentials": { + "base": "The OAuth 2.0 credentials required for OAuth 2.0 authentication.
", + "refs": { + "CustomConnectorProfileCredentials$oauth2": "The OAuth 2.0 credentials required for the authentication of the user.
" + } + }, + "OAuth2Defaults": { + "base": "Contains the default values required for OAuth 2.0 authentication.
", + "refs": { + "AuthenticationConfig$oAuth2Defaults": "Contains the default values required for OAuth 2.0 authentication.
" + } + }, + "OAuth2GrantType": { + "base": null, + "refs": { + "OAuth2GrantTypeSupportedList$member": null, + "OAuth2Properties$oAuth2GrantType": "The OAuth 2.0 grant type used by connector for OAuth 2.0 authentication.
" + } + }, + "OAuth2GrantTypeSupportedList": { + "base": null, + "refs": { + "OAuth2Defaults$oauth2GrantTypesSupported": "OAuth 2.0 grant types supported by the connector.
" + } + }, + "OAuth2Properties": { + "base": "The OAuth 2.0 properties required for OAuth 2.0 authentication.
", + "refs": { + "CustomConnectorProfileProperties$oAuth2Properties": null + } + }, "OAuthCredentials": { "base": "The OAuth credentials required for OAuth type authentication.
", "refs": { @@ -1133,6 +1529,7 @@ "refs": { "GoogleAnalyticsMetadata$oAuthScopes": "The desired authorization scope for the Google Analytics account.
", "HoneycodeMetadata$oAuthScopes": "The desired authorization scope for the Amazon Honeycode account.
", + "OAuth2Defaults$oauthScopes": "OAuth 2.0 scopes that the connector supports.
", "OAuthProperties$oAuthScopes": "The OAuth scopes required for OAuth type authentication.
", "SalesforceMetadata$oAuthScopes": "The desired authorization scope for the Salesforce account.
", "SlackMetadata$oAuthScopes": "The desired authorization scope for the Slack account.
", @@ -1173,6 +1570,7 @@ "Operator": { "base": null, "refs": { + "ConnectorOperator$CustomConnector": "Operators supported by the custom connector.
", "FilterOperatorList$member": null } }, @@ -1182,6 +1580,12 @@ "TaskPropertiesMap$key": null } }, + "Operators": { + "base": null, + "refs": { + "SupportedOperatorList$member": null + } + }, "Password": { "base": null, "refs": { @@ -1248,12 +1652,37 @@ "SnowflakeConnectorProfileProperties$privateLinkServiceName": "The Snowflake Private Link service name to be used for private data transfers.
" } }, + "ProfilePropertiesMap": { + "base": null, + "refs": { + "CustomConnectorProfileProperties$profileProperties": "A map of properties that are required to create a profile for the custom connector.
" + } + }, + "ProfilePropertyKey": { + "base": null, + "refs": { + "ProfilePropertiesMap$key": null + } + }, + "ProfilePropertyValue": { + "base": null, + "refs": { + "ProfilePropertiesMap$value": null + } + }, "Property": { "base": null, "refs": { "TaskPropertiesMap$value": null } }, + "Range": { + "base": "The range of values that the property supports.
", + "refs": { + "FieldTypeDetails$fieldValueRange": "The range of values this field can hold.
", + "FieldTypeDetails$fieldLengthRange": "This is the allowable length range for this field's value.
" + } + }, "RedirectUri": { "base": null, "refs": { @@ -1289,6 +1718,7 @@ "refs": { "GoogleAnalyticsConnectorProfileCredentials$refreshToken": "The credentials used to acquire new access tokens. This is required only for OAuth2 access tokens, and is not required for OAuth1 access tokens.
", "HoneycodeConnectorProfileCredentials$refreshToken": "The credentials used to acquire new access tokens.
", + "OAuth2Credentials$refreshToken": "The refresh token used to refresh an expired access token.
", "OAuthCredentials$refreshToken": "The refresh token used to refresh expired access token.
", "SalesforceConnectorProfileCredentials$refreshToken": "The credentials used to acquire new access tokens.
" } @@ -1306,6 +1736,23 @@ "SnowflakeMetadata$supportedRegions": "Specifies the supported Amazon Web Services Regions when using Snowflake.
" } }, + "RegisterConnectorRequest": { + "base": null, + "refs": { + } + }, + "RegisterConnectorResponse": { + "base": null, + "refs": { + } + }, + "RegisteredBy": { + "base": null, + "refs": { + "ConnectorConfiguration$registeredBy": "Information about who registered the connector.
", + "ConnectorDetail$registeredBy": "The user who registered the connector.
" + } + }, "ResourceNotFoundException": { "base": "The resource specified in the request (such as the source or destination connector profile) is not found.
", "refs": { @@ -1635,15 +2082,36 @@ "String": { "base": null, "refs": { + "ConnectorEntityField$defaultValue": "Default value that can be assigned to this field.
", + "FieldTypeDetails$valueRegexPattern": "The regular expression pattern for the field name.
", + "FieldTypeDetails$supportedDateFormat": "The date format that the field supports.
", "SourceFields$member": null } }, + "SupportedApiVersion": { + "base": null, + "refs": { + "SupportedApiVersionList$member": null + } + }, + "SupportedApiVersionList": { + "base": null, + "refs": { + "ConnectorConfiguration$supportedApiVersions": "A list of API versions that are supported by the connector.
" + } + }, "SupportedFieldTypeDetails": { "base": " Contains details regarding all the supported FieldTypes
and their corresponding filterOperators
and supportedValues
.
Contains details regarding the supported FieldType
, including the corresponding filterOperators
and supportedValues
.
A list of operators supported by the connector.
" + } + }, "SupportedValueList": { "base": null, "refs": { @@ -1653,6 +2121,7 @@ "SupportedWriteOperationList": { "base": null, "refs": { + "ConnectorConfiguration$supportedWriteOperations": "A list of write operations supported by the connector.
", "DestinationFieldProperties$supportedWriteOperations": " A list of supported write operations. For each write operation listed, this field can be used in idFieldNames
when that write operation is present as a destination option.
A list of tasks that Amazon AppFlow performs while transferring the data in the flow run.
" } }, + "ThrottlingException": { + "base": "API calls have exceeded the maximum allowed API request rate per account and per Region.
", + "refs": { + } + }, "Timezone": { "base": null, "refs": { @@ -1730,7 +2204,15 @@ "TokenUrl": { "base": null, "refs": { - "OAuthProperties$tokenUrl": "The token url required to fetch access/refresh tokens using authorization code and also to refresh expired access token using refresh token.
" + "OAuth2Properties$tokenUrl": "The token URL required for OAuth 2.0 authentication.
", + "OAuthProperties$tokenUrl": "The token url required to fetch access/refresh tokens using authorization code and also to refresh expired access token using refresh token.
", + "TokenUrlList$member": null + } + }, + "TokenUrlList": { + "base": null, + "refs": { + "OAuth2Defaults$tokenUrls": "Token URLs that can be used for OAuth 2.0 authentication.
" } }, "TrendmicroConnectorOperator": { @@ -1791,6 +2273,16 @@ "ConnectorConfiguration$supportedTriggerTypes": "Specifies the supported trigger types for the flow.
" } }, + "UnregisterConnectorRequest": { + "base": null, + "refs": { + } + }, + "UnregisterConnectorResponse": { + "base": null, + "refs": { + } + }, "UnsupportedOperationException": { "base": "The requested operation is not supported for the current flow.
", "refs": { @@ -1918,6 +2410,7 @@ "WriteOperationType": { "base": " The possible write operations in the destination connector. When this value is not provided, this defaults to the INSERT
operation.
Specifies the type of write operation to be performed in the custom connector when it's used as destination.
", "SalesforceDestinationProperties$writeOperationType": " This specifies the type of write operation to be performed in Salesforce. When the value is UPSERT
, then idFieldNames
is required.
Gets recommendations for which reservations to purchase. These recommendations could help you reduce your costs. Reservations provide a discounted hourly rate (up to 75%) compared to On-Demand pricing.
Amazon Web Services generates your recommendations by identifying your On-Demand usage during a specific time period and collecting your usage into categories that are eligible for a reservation. After Amazon Web Services has these categories, it simulates every combination of reservations in each category of usage to identify the best number of each type of RI to purchase to maximize your estimated savings.
For example, Amazon Web Services automatically aggregates your Amazon EC2 Linux, shared tenancy, and c4 family usage in the US West (Oregon) Region and recommends that you buy size-flexible regional reservations to apply to the c4 family usage. Amazon Web Services recommends the smallest size instance in an instance family. This makes it easier to purchase a size-flexible RI. Amazon Web Services also shows the equal number of normalized units so that you can purchase any instance size that you want. For this example, your RI recommendation would be for c4.large
because that is the smallest size instance in the c4 instance family.
Retrieves the reservation utilization for your account. Management account in an organization have access to member accounts. You can filter data by dimensions in a time period. You can use GetDimensionValues
to determine the possible dimension values. Currently, you can group only by SUBSCRIPTION_ID
.
Creates recommendations that help you save cost by identifying idle and underutilized Amazon EC2 instances.
Recommendations are generated to either downsize or terminate instances, along with providing savings detail and metrics. For details on calculation and function, see Optimizing Your Cost with Rightsizing Recommendations in the Billing and Cost Management User Guide.
", - "GetSavingsPlansCoverage": "Retrieves the Savings Plans covered for your account. This enables you to see how much of your cost is covered by a Savings Plan. An organization’s management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data for Savings Plans usage with the following dimensions:
LINKED_ACCOUNT
REGION
SERVICE
INSTANCE_FAMILY
GetSavingsPlansCoverage
doesn't support filtering by tags. GetSavingsPlansCoverage
also doesn't support the OR
operator between filter dimensions. For the full request syntax with supported parameters, see Examples.
To determine valid values for a dimension, use the GetDimensionValues
operation.
Retrieves the Savings Plans covered for your account. This enables you to see how much of your cost is covered by a Savings Plan. An organization’s management account can see the coverage of the associated member accounts. This supports dimensions, Cost Categories, and nested expressions. For any time period, you can filter data for Savings Plans usage with the following dimensions:
LINKED_ACCOUNT
REGION
SERVICE
INSTANCE_FAMILY
To determine valid values for a dimension, use the GetDimensionValues
operation.
Retrieves your request parameters, Savings Plan Recommendations Summary and Details.
", - "GetSavingsPlansUtilization": "Retrieves the Savings Plans utilization for your account across date ranges with daily or monthly granularity. Management account in an organization have access to member accounts. You can use GetDimensionValues
in SAVINGS_PLANS
to determine the possible dimension values.
You cannot group by any dimension values for GetSavingsPlansUtilization
.
GetSavingsPlansUtilization
doesn't support filtering by tags. GetSavingsPlansUtilization
also doesn't support the OR
operator between filter dimensions. For the full request syntax with supported parameters, see Examples.
Retrieves attribute data along with aggregate utilization and savings data for a given time period. This doesn't support granular or grouped data (daily/monthly) in response. You can't retrieve data by dates in a single response similar to GetSavingsPlanUtilization
, but you have the option to make multiple calls to GetSavingsPlanUtilizationDetails
by providing individual dates. You can use GetDimensionValues
in SAVINGS_PLANS
to determine the possible dimension values.
GetSavingsPlanUtilizationDetails
internally groups data by SavingsPlansArn
.
GetSavingsPlansUtilizationDetails
doesn't support filtering by tags. GetSavingsPlansUtilizationDetails
also doesn't support the OR
operator between filter dimensions. For the full request syntax with supported parameters, see Examples.
Retrieves the Savings Plans utilization for your account across date ranges with daily or monthly granularity. Management account in an organization have access to member accounts. You can use GetDimensionValues
in SAVINGS_PLANS
to determine the possible dimension values.
You cannot group by any dimension values for GetSavingsPlansUtilization
.
Retrieves attribute data along with aggregate utilization and savings data for a given time period. This doesn't support granular or grouped data (daily/monthly) in response. You can't retrieve data by dates in a single response similar to GetSavingsPlanUtilization
, but you have the option to make multiple calls to GetSavingsPlanUtilizationDetails
by providing individual dates. You can use GetDimensionValues
in SAVINGS_PLANS
to determine the possible dimension values.
GetSavingsPlanUtilizationDetails
internally groups data by SavingsPlansArn
.
Queries for available tag keys and tag values for a specified period. You can search the tag values for an arbitrary string.
", "GetUsageForecast": "Retrieves a forecast for how much Amazon Web Services predicts that you will use over the forecast time period that you select, based on your past usage.
", "ListCostCategoryDefinitions": "Returns the name, ARN, NumberOfRules
and effective dates of all Cost Categories defined in the account. You have the option to use EffectiveOn
to return a list of Cost Categories that were active on a specific date. If there is no EffectiveOn
specified, you’ll see Cost Categories that are effective on the current date. If Cost Category is still effective, EffectiveEnd
is omitted in the response. ListCostCategoryDefinitions
supports pagination. The request can have a MaxResults
range up to 100.
The context for the call to GetDimensionValues
. This can be RESERVATIONS
or COST_AND_USAGE
. The default value is COST_AND_USAGE
. If the context is set to RESERVATIONS
, the resulting dimension values can be used in the GetReservationUtilization
operation. If the context is set to COST_AND_USAGE
, the resulting dimension values can be used in the GetCostAndUsage
operation.
If you set the context to COST_AND_USAGE
, you can use the following dimensions for searching:
AZ - The Availability Zone. An example is us-east-1a
.
DATABASE_ENGINE - The Amazon Relational Database Service database. Examples are Aurora or MySQL.
INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge
.
LEGAL_ENTITY_NAME - The name of the organization that sells you Amazon Web Services services, such as Amazon Web Services.
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
OPERATING_SYSTEM - The operating system. Examples are Windows or Linux.
OPERATION - The action performed. Examples include RunInstance
and CreateBucket
.
PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
PURCHASE_TYPE - The reservation type of the purchase to which this usage is related. Examples include On-Demand Instances and Standard Reserved Instances.
SERVICE - The Amazon Web Services service such as Amazon DynamoDB.
USAGE_TYPE - The type of usage. An example is DataTransfer-In-Bytes. The response for the GetDimensionValues
operation includes a unit attribute. Examples include GB and Hrs.
USAGE_TYPE_GROUP - The grouping of common usage types. An example is Amazon EC2: CloudWatch – Alarms. The response for this operation includes a unit attribute.
REGION - The Amazon Web Services Region.
RECORD_TYPE - The different types of charges such as RI fees, usage costs, tax refunds, and credits.
RESOURCE_ID - The unique identifier of the resource. ResourceId is an opt-in feature only available for last 14 days for EC2-Compute Service.
If you set the context to RESERVATIONS
, you can use the following dimensions for searching:
AZ - The Availability Zone. An example is us-east-1a
.
CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are Windows or Linux.
DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service deployments. Valid values are SingleAZ
and MultiAZ
.
INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge
.
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
REGION - The Amazon Web Services Region.
SCOPE (Utilization only) - The scope of a Reserved Instance (RI). Values are regional or a single Availability Zone.
TAG (Coverage only) - The tags that are associated with a Reserved Instance (RI).
TENANCY - The tenancy of a resource. Examples are shared or dedicated.
If you set the context to SAVINGS_PLANS
, you can use the following dimensions for searching:
SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute)
PAYMENT_OPTION - Payment option for the given Savings Plans (for example, All Upfront)
REGION - The Amazon Web Services Region.
INSTANCE_TYPE_FAMILY - The family of instances (For example, m5
)
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
SAVINGS_PLAN_ARN - The unique identifier for your Savings Plan
The context for the call to GetDimensionValues
. This can be RESERVATIONS
or COST_AND_USAGE
. The default value is COST_AND_USAGE
. If the context is set to RESERVATIONS
, the resulting dimension values can be used in the GetReservationUtilization
operation. If the context is set to COST_AND_USAGE
, the resulting dimension values can be used in the GetCostAndUsage
operation.
If you set the context to COST_AND_USAGE
, you can use the following dimensions for searching:
AZ - The Availability Zone. An example is us-east-1a
.
BILLING_ENTITY - The Amazon Web Services seller that your account is with. Possible values are the following:
- Amazon Web Services(Amazon Web Services): The entity that sells Amazon Web Services services.
- AISPL (Amazon Internet Services Pvt. Ltd.): The local Indian entity that is an acting reseller for Amazon Web Services services in India.
- Amazon Web Services Marketplace: The entity that supports the sale of solutions built on Amazon Web Services by third-party software providers.
CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are Windows or Linux.
DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service deployments. Valid values are SingleAZ
and MultiAZ
.
DATABASE_ENGINE - The Amazon Relational Database Service database. Examples are Aurora or MySQL.
INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge
.
INSTANCE_TYPE_FAMILY - A family of instance types optimized to fit different use cases. Examples are Compute Optimized
(C4
, C5
, C6g
, C7g
etc.), Memory Optimization
(R4
, R5n
, R5b
, R6g
etc).
INVOICING_ENTITY - The name of the entity issuing the Amazon Web Services invoice.
LEGAL_ENTITY_NAME - The name of the organization that sells you Amazon Web Services services, such as Amazon Web Services.
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
OPERATING_SYSTEM - The operating system. Examples are Windows or Linux.
OPERATION - The action performed. Examples include RunInstance
and CreateBucket
.
PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
PURCHASE_TYPE - The reservation type of the purchase to which this usage is related. Examples include On-Demand Instances and Standard Reserved Instances.
RESERVATION_ID - The unique identifier for an Amazon Web Services Reservation Instance.
SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans.
SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute).
SERVICE - The Amazon Web Services service such as Amazon DynamoDB.
TENANCY - The tenancy of a resource. Examples are shared or dedicated.
USAGE_TYPE - The type of usage. An example is DataTransfer-In-Bytes. The response for the GetDimensionValues
operation includes a unit attribute. Examples include GB and Hrs.
USAGE_TYPE_GROUP - The grouping of common usage types. An example is Amazon EC2: CloudWatch – Alarms. The response for this operation includes a unit attribute.
REGION - The Amazon Web Services Region.
RECORD_TYPE - The different types of charges such as RI fees, usage costs, tax refunds, and credits.
RESOURCE_ID - The unique identifier of the resource. ResourceId is an opt-in feature only available for last 14 days for EC2-Compute Service.
If you set the context to RESERVATIONS
, you can use the following dimensions for searching:
AZ - The Availability Zone. An example is us-east-1a
.
CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are Windows or Linux.
DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service deployments. Valid values are SingleAZ
and MultiAZ
.
INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge
.
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
PLATFORM - The Amazon EC2 operating system. Examples are Windows or Linux.
REGION - The Amazon Web Services Region.
SCOPE (Utilization only) - The scope of a Reserved Instance (RI). Values are regional or a single Availability Zone.
TAG (Coverage only) - The tags that are associated with a Reserved Instance (RI).
TENANCY - The tenancy of a resource. Examples are shared or dedicated.
If you set the context to SAVINGS_PLANS
, you can use the following dimensions for searching:
SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute)
PAYMENT_OPTION - Payment option for the given Savings Plans (for example, All Upfront)
REGION - The Amazon Web Services Region.
INSTANCE_TYPE_FAMILY - The family of instances (For example, m5
)
LINKED_ACCOUNT - The description in the attribute map that includes the full name of the member account. The value field contains the Amazon Web Services ID of the member account.
SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans.
The names of the metadata types that you can use to filter and group your results. For example, AZ
returns a list of Availability Zones.
The name of the dimension. Each Dimension
is available for a different Context
. For more information, see Context.
The name of the dimension. Each Dimension
is available for a different Context
. For more information, see Context
.
An Expression object used to categorize costs. This supports dimensions, tags, and nested expressions. Currently the only dimensions supported are LINKED_ACCOUNT
, SERVICE_CODE
, RECORD_TYPE
, and LINKED_ACCOUNT_NAME
.
Root level OR
isn't supported. We recommend that you create a separate rule instead.
RECORD_TYPE
is a dimension used for Cost Explorer APIs, and is also supported for Cost Category expressions. This dimension uses different terms, depending on whether you're using the console or API/JSON editor. For a detailed comparison, see Term Comparisons in the Billing and Cost Management User Guide.
Return results that don't match a Dimension
object.
Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE
and LINKED_ACCOUNT
and get the costs that are associated with that account's usage of that service. You can nest Expression
objects to define any combination of dimension filters. For more information, see Expression.
The default values are EQUALS
and CASE_SENSITIVE
. Valid values for MatchOptions
for Dimensions
are EQUALS
and CASE_SENSITIVE
.
Valid values for MatchOptions
for CostCategories
and Tags
are EQUALS
, ABSENT
, and CASE_SENSITIVE
.
Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE
and LINKED_ACCOUNT
and get the costs that are associated with that account's usage of that service. You can nest Expression
objects to define any combination of dimension filters. For more information, see Expression.
The GetCostAndUsageWithResources
operation requires that you either group by or filter by a ResourceId
. It requires the Expression \"SERVICE = Amazon Elastic Compute Cloud - Compute\"
in the filter.
The default values are EQUALS
and CASE_SENSITIVE
. Valid values for MatchOptions
for Dimensions
are EQUALS
and CASE_SENSITIVE
.
Valid values for MatchOptions
for CostCategories
and Tags
are EQUALS
, ABSENT
, and CASE_SENSITIVE
.
Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE
and LINKED_ACCOUNT
and get the costs that are associated with that account's usage of that service. You can nest Expression
objects to define any combination of dimension filters. For more information, see Expression.
Valid values for MatchOptions
for CostCategories
and Tags
are EQUALS
, ABSENT
, and CASE_SENSITIVE
.
The default values are EQUALS
and CASE_SENSITIVE
. Valid values for MatchOptions
for Dimensions
are EQUALS
and CASE_SENSITIVE
.
Filters Amazon Web Services costs by different dimensions. For example, you can specify SERVICE
and LINKED_ACCOUNT
and get the costs that are associated with that account's usage of that service. You can nest Expression
objects to define any combination of dimension filters. For more information, see Expression.
The GetCostAndUsageWithResources
operation requires that you either group by or filter by a ResourceId
. It requires the Expression \"SERVICE = Amazon Elastic Compute Cloud - Compute\"
in the filter.
Valid values for MatchOptions
for CostCategories
and Tags
are EQUALS
, ABSENT
, and CASE_SENSITIVE
.
The default values are EQUALS
and CASE_SENSITIVE
. Valid values for MatchOptions
for Dimensions
are EQUALS
and CASE_SENSITIVE
.
The filters that you want to use to filter your forecast. The GetCostForecast
API supports filtering by the following dimensions:
AZ
INSTANCE_TYPE
LINKED_ACCOUNT
LINKED_ACCOUNT_NAME
OPERATION
PURCHASE_TYPE
REGION
SERVICE
USAGE_TYPE
USAGE_TYPE_GROUP
RECORD_TYPE
OPERATING_SYSTEM
TENANCY
SCOPE
PLATFORM
SUBSCRIPTION_ID
LEGAL_ENTITY_NAME
DEPLOYMENT_OPTION
DATABASE_ENGINE
INSTANCE_TYPE_FAMILY
BILLING_ENTITY
RESERVATION_ID
SAVINGS_PLAN_ARN
Filters utilization data by dimensions. You can filter by the following dimensions:
AZ
CACHE_ENGINE
DATABASE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
SERVICE
TAG
TENANCY
GetReservationCoverage
uses the same Expression object as the other operations, but only AND
is supported among each dimension. You can nest only one level deep.
If you don't provide a SERVICE
filter, Cost Explorer defaults to EC2.
Cost category is also supported.
", + "GetReservationCoverageRequest$Filter": "Filters utilization data by dimensions. You can filter by the following dimensions:
AZ
CACHE_ENGINE
DATABASE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
SERVICE
TAG
TENANCY
GetReservationCoverage
uses the same Expression object as the other operations, but only AND
is supported among each dimension. You can nest only one level deep. If there are multiple values for a dimension, they are OR'd together.
If you don't provide a SERVICE
filter, Cost Explorer defaults to EC2.
Cost category is also supported.
", "GetReservationPurchaseRecommendationRequest$Filter": null, - "GetReservationUtilizationRequest$Filter": "Filters utilization data by dimensions. You can filter by the following dimensions:
AZ
CACHE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
SERVICE
SCOPE
TENANCY
GetReservationUtilization
uses the same Expression object as the other operations, but only AND
is supported among each dimension, and nesting is supported up to only one level deep.
Filters utilization data by dimensions. You can filter by the following dimensions:
AZ
CACHE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
SERVICE
SCOPE
TENANCY
GetReservationUtilization
uses the same Expression object as the other operations, but only AND
is supported among each dimension, and nesting is supported up to only one level deep. If there are multiple values for a dimension, they are OR'd together.
Filters Savings Plans coverage data by dimensions. You can filter data for Savings Plans usage with the following dimensions:
LINKED_ACCOUNT
REGION
SERVICE
INSTANCE_FAMILY
GetSavingsPlansCoverage
uses the same Expression object as the other operations, but only AND
is supported among each dimension.
Cost category is supported. Tags are not supported.
", + "GetSavingsPlansCoverageRequest$Filter": "Filters Savings Plans coverage data by dimensions. You can filter data for Savings Plans usage with the following dimensions:
LINKED_ACCOUNT
REGION
SERVICE
INSTANCE_FAMILY
GetSavingsPlansCoverage
uses the same Expression object as the other operations, but only AND
is supported among each dimension. If there are multiple values for a dimension, they are OR'd together.
Cost category is also supported.
", "GetSavingsPlansPurchaseRecommendationRequest$Filter": "You can filter your recommendations by Account ID with the LINKED_ACCOUNT
dimension. To filter your recommendations by Account ID, specify Key
as LINKED_ACCOUNT
and Value
as the comma-separated Acount ID(s) for which you want to see Savings Plans purchase recommendations.
For GetSavingsPlansPurchaseRecommendation, the Filter
does not include CostCategories
or Tags
. It only includes Dimensions
. With Dimensions
, Key
must be LINKED_ACCOUNT
and Value
can be a single Account ID or multiple comma-separated Account IDs for which you want to see Savings Plans Purchase Recommendations. AND
and OR
operators are not supported.
Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:
LINKED_ACCOUNT
SAVINGS_PLAN_ARN
REGION
PAYMENT_OPTION
INSTANCE_TYPE_FAMILY
GetSavingsPlansUtilizationDetails
uses the same Expression object as the other operations, but only AND
is supported among each dimension.
Filtering by tags isn't supported.
", - "GetSavingsPlansUtilizationRequest$Filter": "Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:
LINKED_ACCOUNT
SAVINGS_PLAN_ARN
SAVINGS_PLANS_TYPE
REGION
PAYMENT_OPTION
INSTANCE_TYPE_FAMILY
GetSavingsPlansUtilization
uses the same Expression object as the other operations, but only AND
is supported among each dimension.
Filtering by tags isn't supported.
", + "GetSavingsPlansUtilizationDetailsRequest$Filter": "Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:
LINKED_ACCOUNT
SAVINGS_PLAN_ARN
REGION
PAYMENT_OPTION
INSTANCE_TYPE_FAMILY
GetSavingsPlansUtilizationDetails
uses the same Expression object as the other operations, but only AND
is supported among each dimension.
Filters Savings Plans utilization coverage data for active Savings Plans dimensions. You can filter data with the following dimensions:
LINKED_ACCOUNT
SAVINGS_PLAN_ARN
SAVINGS_PLANS_TYPE
REGION
PAYMENT_OPTION
INSTANCE_TYPE_FAMILY
GetSavingsPlansUtilization
uses the same Expression object as the other operations, but only AND
is supported among each dimension.
The filters that you want to use to filter your forecast. The GetUsageForecast
API supports filtering by the following dimensions:
AZ
INSTANCE_TYPE
LINKED_ACCOUNT
LINKED_ACCOUNT_NAME
OPERATION
PURCHASE_TYPE
REGION
SERVICE
USAGE_TYPE
USAGE_TYPE_GROUP
RECORD_TYPE
OPERATING_SYSTEM
TENANCY
SCOPE
PLATFORM
SUBSCRIPTION_ID
LEGAL_ENTITY_NAME
DEPLOYMENT_OPTION
DATABASE_ENGINE
INSTANCE_TYPE_FAMILY
BILLING_ENTITY
RESERVATION_ID
SAVINGS_PLAN_ARN
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, or any two group by types.
Valid values for the DIMENSION
type are AZ
, INSTANCE_TYPE
, LEGAL_ENTITY_NAME
, LINKED_ACCOUNT
, OPERATION
, PLATFORM
, PURCHASE_TYPE
, SERVICE
, TENANCY
, RECORD_TYPE
, and USAGE_TYPE
.
When you group by the TAG
type and include a valid tag key, you get all tag values, including empty strings.
You can group Amazon Web Services costs using up to two different groups, either dimensions, tag keys, cost categories, or any two group by types.
Valid values for the DIMENSION
type are AZ
, INSTANCE_TYPE
, LEGAL_ENTITY_NAME
, INVOICING_ENTITY
, LINKED_ACCOUNT
, OPERATION
, PLATFORM
, PURCHASE_TYPE
, SERVICE
, TENANCY
, RECORD_TYPE
, and USAGE_TYPE
.
When you group by the TAG
type and include a valid tag key, you get all tag values, including empty strings.
The groups that are specified by the Filter
or GroupBy
parameters in the request.
You can group Amazon Web Services costs using up to two different groups: DIMENSION
, TAG
, COST_CATEGORY
.
The groups that are specified by the Filter
or GroupBy
parameters in the request.
You can group the data by the following attributes:
AZ
CACHE_ENGINE
DATABASE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
TENANCY
You can group the data by the following attributes:
AZ
CACHE_ENGINE
DATABASE_ENGINE
DEPLOYMENT_OPTION
INSTANCE_TYPE
INVOICING_ENTITY
LINKED_ACCOUNT
OPERATING_SYSTEM
PLATFORM
REGION
TENANCY
Groups only by SUBSCRIPTION_ID
. Metadata is included.
You can group the data using the attributes INSTANCE_FAMILY
, REGION
, or SERVICE
.
Deletes a previously created document classifier
Only those classifiers that are in terminated states (IN_ERROR, TRAINED) will be deleted. If an active inference job is using the model, a ResourceInUseException
will be returned.
This is an asynchronous action that puts the classifier into a DELETING state, and it is then removed by a background job. Once removed, the classifier disappears from your account and is no longer available for use.
", "DeleteEndpoint": "Deletes a model-specific endpoint for a previously-trained custom model. All endpoints must be deleted in order for the model to be deleted.
", "DeleteEntityRecognizer": "Deletes an entity recognizer.
Only those recognizers that are in terminated states (IN_ERROR, TRAINED) will be deleted. If an active inference job is using the model, a ResourceInUseException
will be returned.
This is an asynchronous action that puts the recognizer into a DELETING state, and it is then removed by a background job. Once removed, the recognizer disappears from your account and is no longer available for use.
", + "DeleteResourcePolicy": "Deletes a resource-based policy that is attached to a custom model.
", "DescribeDocumentClassificationJob": "Gets the properties associated with a document classification job. Use this operation to get the status of a classification job.
", "DescribeDocumentClassifier": "Gets the properties associated with a document classifier.
", "DescribeDominantLanguageDetectionJob": "Gets the properties associated with a dominant language detection job. Use this operation to get the status of a detection job.
", @@ -24,6 +25,7 @@ "DescribeEventsDetectionJob": "Gets the status and details of an events detection job.
", "DescribeKeyPhrasesDetectionJob": "Gets the properties associated with a key phrases detection job. Use this operation to get the status of a detection job.
", "DescribePiiEntitiesDetectionJob": "Gets the properties associated with a PII entities detection job. For example, you can use this operation to get the job status.
", + "DescribeResourcePolicy": "Gets the details of a resource-based policy that is attached to a custom model, including the JSON body of the policy.
", "DescribeSentimentDetectionJob": "Gets the properties associated with a sentiment detection job. Use this operation to get the status of a detection job.
", "DescribeTopicsDetectionJob": "Gets the properties associated with a topic detection job. Use this operation to get the status of a detection job.
", "DetectDominantLanguage": "Determines the dominant language of the input text. For a list of languages that Amazon Comprehend can detect, see Amazon Comprehend Supported Languages.
", @@ -32,6 +34,7 @@ "DetectPiiEntities": "Inspects the input text for entities that contain personally identifiable information (PII) and returns information about them.
", "DetectSentiment": "Inspects text and returns an inference of the prevailing sentiment (POSITIVE
, NEUTRAL
, MIXED
, or NEGATIVE
).
Inspects text for syntax and the part of speech of words in the document. For more information, how-syntax.
", + "ImportModel": "Creates a new custom model that replicates a source custom model that you import. The source model can be in your AWS account or another one.
If the source model is in another AWS account, then it must have a resource-based policy that authorizes you to import it.
The source model must be in the same AWS region that you're using when you import. You can't import a model that's in a different region.
", "ListDocumentClassificationJobs": "Gets a list of the documentation classification jobs that you have submitted.
", "ListDocumentClassifierSummaries": "Gets a list of summaries of the document classifiers that you have created
", "ListDocumentClassifiers": "Gets a list of the document classifiers that you have created.
", @@ -46,6 +49,7 @@ "ListSentimentDetectionJobs": "Gets a list of sentiment detection jobs that you have submitted.
", "ListTagsForResource": "Lists all tags associated with a given Amazon Comprehend resource.
", "ListTopicsDetectionJobs": "Gets a list of the topic detection jobs that you have submitted.
", + "PutResourcePolicy": "Attaches a resource-based policy to a custom model. You can use this policy to authorize an entity in another AWS account to import the custom model, which replicates it in Amazon Comprehend in their account.
", "StartDocumentClassificationJob": "Starts an asynchronous document classification job. Use the operation to track the progress of the job.
", "StartDominantLanguageDetectionJob": "Starts an asynchronous dominant language detection job for a collection of documents. Use the operation to track the status of a job.
", "StartEntitiesDetectionJob": "Starts an asynchronous entity detection job for a collection of documents. Use the operation to track the status of a job.
This API can be used for either standard entity detection or custom entity recognition. In order to be used for custom entity recognition, the optional EntityRecognizerArn
must be used in order to provide access to the recognizer being used to detect the custom entity.
The name that you assigned to the document classifier
", "DocumentClassifierSummary$DocumentClassifierName": "The name that you assigned the document classifier.
", "EntityRecognizerFilter$RecognizerName": "The name that you assigned the entity recognizer.
", - "EntityRecognizerSummary$RecognizerName": "The name that you assigned the entity recognizer.
" + "EntityRecognizerSummary$RecognizerName": "The name that you assigned the entity recognizer.
", + "ImportModelRequest$ModelName": "The name to assign to the custom model that is created in Amazon Comprehend by this import.
" } }, "ComprehendEndpointArn": { @@ -304,9 +309,14 @@ "base": null, "refs": { "CreateEndpointRequest$ModelArn": "The Amazon Resource Number (ARN) of the model to which the endpoint will be attached.
", + "DeleteResourcePolicyRequest$ResourceArn": "The Amazon Resource Name (ARN) of the custom model version that has the policy to delete.
", + "DescribeResourcePolicyRequest$ResourceArn": "The Amazon Resource Name (ARN) of the policy to describe.
", "EndpointFilter$ModelArn": "The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
", "EndpointProperties$ModelArn": "The Amazon Resource Number (ARN) of the model to which the endpoint is attached.
", "EndpointProperties$DesiredModelArn": "ARN of the new model to use for updating an existing endpoint. This ARN is going to be different from the model ARN when the update is in progress
", + "ImportModelRequest$SourceModelArn": "The Amazon Resource Name (ARN) of the custom model to import.
", + "ImportModelResponse$ModelArn": "The Amazon Resource Name (ARN) of the custom model being imported.
", + "PutResourcePolicyRequest$ResourceArn": "The Amazon Resource Name (ARN) of the custom model to attach the policy to.
", "UpdateEndpointRequest$DesiredModelArn": "The ARN of the new model to use when updating an existing endpoint.
" } }, @@ -407,6 +417,16 @@ "refs": { } }, + "DeleteResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteResourcePolicyResponse": { + "base": null, + "refs": { + } + }, "DescribeDocumentClassificationJobRequest": { "base": null, "refs": { @@ -497,6 +517,16 @@ "refs": { } }, + "DescribeResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "DescribeResourcePolicyResponse": { + "base": null, + "refs": { + } + }, "DescribeSentimentDetectionJobRequest": { "base": null, "refs": { @@ -610,6 +640,7 @@ "DescribeDocumentClassifierRequest$DocumentClassifierArn": "The Amazon Resource Name (ARN) that identifies the document classifier. The operation returns this identifier in its response.
", "DocumentClassificationJobProperties$DocumentClassifierArn": "The Amazon Resource Name (ARN) that identifies the document classifier.
", "DocumentClassifierProperties$DocumentClassifierArn": "The Amazon Resource Name (ARN) that identifies the document classifier.
", + "DocumentClassifierProperties$SourceModelArn": "The Amazon Resource Name (ARN) of the source model. This model was imported from a different AWS account to create the document classifier model in your AWS account.
", "StartDocumentClassificationJobRequest$DocumentClassifierArn": "The Amazon Resource Name (ARN) of the document classifier to use to process the job.
", "StopTrainingDocumentClassifierRequest$DocumentClassifierArn": "The Amazon Resource Name (ARN) that identifies the document classifier currently being trained.
" } @@ -829,6 +860,7 @@ "DescribeEntityRecognizerRequest$EntityRecognizerArn": "The Amazon Resource Name (ARN) that identifies the entity recognizer.
", "EntitiesDetectionJobProperties$EntityRecognizerArn": "The Amazon Resource Name (ARN) that identifies the entity recognizer.
", "EntityRecognizerProperties$EntityRecognizerArn": "The Amazon Resource Name (ARN) that identifies the entity recognizer.
", + "EntityRecognizerProperties$SourceModelArn": "The Amazon Resource Name (ARN) of the source model. This model was imported from a different AWS account to create the entity recognizer model in your AWS account.
", "StartEntitiesDetectionJobRequest$EntityRecognizerArn": "The Amazon Resource Name (ARN) that identifies the specific entity recognizer to be used by the StartEntitiesDetectionJob
. This ARN is optional and is only used for a custom entity recognition job.
The Amazon Resource Name (ARN) that identifies the entity recognizer currently being trained.
" } @@ -1011,6 +1043,7 @@ "EntitiesDetectionJobProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to your input data.
", "EntityRecognizerProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role that grants Amazon Comprehend read access to your input data.
", "EventsDetectionJobProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) of the AWS Identify and Access Management (IAM) role that grants Amazon Comprehend read access to your input data.
", + "ImportModelRequest$DataAccessRoleArn": "The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role that allows Amazon Comprehend to use Amazon Key Management Service (KMS) to encrypt or decrypt the custom model.
", "KeyPhrasesDetectionJobProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to your input data.
", "PiiEntitiesDetectionJobProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to your input data.
", "SentimentDetectionJobProperties$DataAccessRoleArn": "The Amazon Resource Name (ARN) that gives Amazon Comprehend read access to your input data.
", @@ -1026,6 +1059,16 @@ "UpdateEndpointRequest$DesiredDataAccessRoleArn": "Data access role ARN to use in case the new model is encrypted with a customer CMK.
" } }, + "ImportModelRequest": { + "base": null, + "refs": { + } + }, + "ImportModelResponse": { + "base": null, + "refs": { + } + }, "InferenceUnitsInteger": { "base": null, "refs": { @@ -1257,6 +1300,7 @@ "EntitiesDetectionJobProperties$VolumeKmsKeyId": "ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt trained custom models. The ModelKmsKeyId can be either of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt trained custom models. The ModelKmsKeyId can be either of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt data on the storage volume attached to the ML compute instance(s) that process the analysis job. The VolumeKmsKeyId can be either of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt the output results from an analysis job. The KmsKeyId can be one of the following formats:
KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"
Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
KMS Key Alias: \"alias/ExampleAlias\"
ARN of a KMS Key Alias: \"arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias\"
ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt the output results from an analysis job.
", @@ -1667,6 +1711,34 @@ "PiiEntitiesDetectionJobProperties$OutputDataConfig": "The output data configuration that you supplied when you created the PII entities detection job.
" } }, + "Policy": { + "base": null, + "refs": { + "CreateDocumentClassifierRequest$ModelPolicy": "The resource-based policy to attach to your custom document classifier model. You can use this policy to allow another AWS account to import your custom model.
Provide your policy as a JSON body that you enter as a UTF-8 encoded string without line breaks. To provide valid JSON, enclose the attribute names and values in double quotes. If the JSON body is also enclosed in double quotes, then you must escape the double quotes that are inside the policy:
\"{\\\"attribute\\\": \\\"value\\\", \\\"attribute\\\": [\\\"value\\\"]}\"
To avoid escaping quotes, you can use single quotes to enclose the policy and double quotes to enclose the JSON names and values:
'{\"attribute\": \"value\", \"attribute\": [\"value\"]}'
The JSON resource-based policy to attach to your custom entity recognizer model. You can use this policy to allow another AWS account to import your custom model.
Provide your JSON as a UTF-8 encoded string without line breaks. To provide valid JSON for your policy, enclose the attribute names and values in double quotes. If the JSON body is also enclosed in double quotes, then you must escape the double quotes that are inside the policy:
\"{\\\"attribute\\\": \\\"value\\\", \\\"attribute\\\": [\\\"value\\\"]}\"
To avoid escaping quotes, you can use single quotes to enclose the policy and double quotes to enclose the JSON names and values:
'{\"attribute\": \"value\", \"attribute\": [\"value\"]}'
The JSON body of the resource-based policy.
", + "PutResourcePolicyRequest$ResourcePolicy": "The JSON resource-based policy to attach to your custom model. Provide your JSON as a UTF-8 encoded string without line breaks. To provide valid JSON for your policy, enclose the attribute names and values in double quotes. If the JSON body is also enclosed in double quotes, then you must escape the double quotes that are inside the policy:
\"{\\\"attribute\\\": \\\"value\\\", \\\"attribute\\\": [\\\"value\\\"]}\"
To avoid escaping quotes, you can use single quotes to enclose the policy and double quotes to enclose the JSON names and values:
'{\"attribute\": \"value\", \"attribute\": [\"value\"]}'
The revision ID of the policy to delete.
", + "DescribeResourcePolicyResponse$PolicyRevisionId": "The revision ID of the policy. Each time you modify a policy, Amazon Comprehend assigns a new revision ID, and it deletes the prior version of the policy.
", + "PutResourcePolicyRequest$PolicyRevisionId": "The revision ID that Amazon Comprehend assigned to the policy that you are updating. If you are creating a new policy that has no prior version, don't use this parameter. Amazon Comprehend creates the revision ID for you.
", + "PutResourcePolicyResponse$PolicyRevisionId": "The revision ID of the policy. Each time you modify a policy, Amazon Comprehend assigns a new revision ID, and it deletes the prior version of the policy.
" + } + }, + "PutResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "PutResourcePolicyResponse": { + "base": null, + "refs": { + } + }, "RedactionConfig": { "base": "Provides configuration parameters for PII entity redaction.
", "refs": { @@ -2031,6 +2103,7 @@ "CreateDocumentClassifierRequest$Tags": "Tags to be associated with the document classifier being created. A tag is a key-value pair that adds as a metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", "CreateEndpointRequest$Tags": "Tags associated with the endpoint being created. A tag is a key-value pair that adds metadata to the endpoint. For example, a tag with \"Sales\" as the key might be added to an endpoint to indicate its use by the sales department.
", "CreateEntityRecognizerRequest$Tags": "Tags to be associated with the entity recognizer being created. A tag is a key-value pair that adds as a metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", + "ImportModelRequest$Tags": "Tags to be associated with the custom model that is created by this import. A tag is a key-value pair that adds as a metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", "ListTagsForResourceResponse$Tags": "Tags associated with the Amazon Comprehend resource being queried. A tag is a key-value pair that adds as a metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", "StartDocumentClassificationJobRequest$Tags": "Tags to be associated with the document classification job. A tag is a key-value pair that adds metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", "StartDominantLanguageDetectionJobRequest$Tags": "Tags to be associated with the dominant language detection job. A tag is a key-value pair that adds metadata to a resource used by Amazon Comprehend. For example, a tag with \"Sales\" as the key might be added to a resource to indicate its use by the sales department.
", @@ -2074,6 +2147,8 @@ "Timestamp": { "base": null, "refs": { + "DescribeResourcePolicyResponse$CreationTime": "The time at which the policy was created.
", + "DescribeResourcePolicyResponse$LastModifiedTime": "The time at which the policy was last modified.
", "DocumentClassificationJobFilter$SubmitTimeBefore": "Filters the list of jobs based on the time that the job was submitted for processing. Returns only jobs submitted before the specified time. Jobs are returned in ascending order, oldest to newest.
", "DocumentClassificationJobFilter$SubmitTimeAfter": "Filters the list of jobs based on the time that the job was submitted for processing. Returns only jobs submitted after the specified time. Jobs are returned in descending order, newest to oldest.
", "DocumentClassificationJobProperties$SubmitTime": "The time that the document classification job was submitted for processing.
", @@ -2193,7 +2268,8 @@ "DocumentClassifierProperties$VersionName": "The version name that you assigned to the document classifier.
", "DocumentClassifierSummary$LatestVersionName": "The version name you assigned to the latest document classifier version.
", "EntityRecognizerProperties$VersionName": "The version name you assigned to the entity recognizer.
", - "EntityRecognizerSummary$LatestVersionName": "The version name you assigned to the latest entity recognizer version.
" + "EntityRecognizerSummary$LatestVersionName": "The version name you assigned to the latest entity recognizer version.
", + "ImportModelRequest$VersionName": "The version name given to the custom model that is created by this import. Version names can have a maximum of 256 characters. Alphanumeric characters, hyphens (-) and underscores (_) are allowed. The version name must be unique among all models with the same classifier name in the account/AWS Region.
" } }, "VpcConfig": { diff --git a/models/apis/dynamodb/2012-08-10/docs-2.json b/models/apis/dynamodb/2012-08-10/docs-2.json index 2632b0ef83e..610da57b07b 100644 --- a/models/apis/dynamodb/2012-08-10/docs-2.json +++ b/models/apis/dynamodb/2012-08-10/docs-2.json @@ -4,7 +4,7 @@ "operations": { "BatchExecuteStatement": "This operation allows you to perform batch reads or writes on data stored in DynamoDB, using PartiQL.
The entire batch must consist of either read statements or write statements, you cannot mix both in one batch.
The BatchGetItem
operation returns the attributes of one or more items from one or more tables. You identify requested items by primary key.
A single operation can retrieve up to 16 MB of data, which can contain as many as 100 items. BatchGetItem
returns a partial result if the response size limit is exceeded, the table's provisioned throughput is exceeded, or an internal processing failure occurs. If a partial result is returned, the operation returns a value for UnprocessedKeys
. You can use this value to retry the operation starting with the next item to get.
If you request more than 100 items, BatchGetItem
returns a ValidationException
with the message \"Too many items requested for the BatchGetItem call.\"
For example, if you ask to retrieve 100 items, but each individual item is 300 KB in size, the system returns 52 items (so as not to exceed the 16 MB limit). It also returns an appropriate UnprocessedKeys
value so you can get the next page of results. If desired, your application can include its own logic to assemble the pages of results into one dataset.
If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchGetItem
returns a ProvisionedThroughputExceededException
. If at least one of the items is successfully processed, then BatchGetItem
completes successfully, while returning the keys of the unread items in UnprocessedKeys
.
If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.
For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.
By default, BatchGetItem
performs eventually consistent reads on every table in the request. If you want strongly consistent reads instead, you can set ConsistentRead
to true
for any or all tables.
In order to minimize response latency, BatchGetItem
retrieves items in parallel.
When designing your application, keep in mind that DynamoDB does not return items in any particular order. To help parse the response by item, include the primary key values for the items in your request in the ProjectionExpression
parameter.
If a requested item does not exist, it is not returned in the result. Requests for nonexistent items consume the minimum read capacity units according to the type of read. For more information, see Working with Tables in the Amazon DynamoDB Developer Guide.
", - "BatchWriteItem": "The BatchWriteItem
operation puts or deletes multiple items in one or more tables. A single call to BatchWriteItem
can write up to 16 MB of data, which can comprise as many as 25 put or delete requests. Individual items to be written can be as large as 400 KB.
BatchWriteItem
cannot update items. To update items, use the UpdateItem
action.
The individual PutItem
and DeleteItem
operations specified in BatchWriteItem
are atomic; however BatchWriteItem
as a whole is not. If any requested operations fail because the table's provisioned throughput is exceeded or an internal processing failure occurs, the failed operations are returned in the UnprocessedItems
response parameter. You can investigate and optionally resend the requests. Typically, you would call BatchWriteItem
in a loop. Each iteration would check for unprocessed items and submit a new BatchWriteItem
request with those unprocessed items until all items have been processed.
If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchWriteItem
returns a ProvisionedThroughputExceededException
.
If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.
For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.
With BatchWriteItem
, you can efficiently write or delete large amounts of data, such as from Amazon EMR, or copy data from another database into DynamoDB. In order to improve performance with these large-scale operations, BatchWriteItem
does not behave in the same way as individual PutItem
and DeleteItem
calls would. For example, you cannot specify conditions on individual put and delete requests, and BatchWriteItem
does not return deleted items in the response.
If you use a programming language that supports concurrency, you can use threads to write items in parallel. Your application must include the necessary logic to manage the threads. With languages that don't support threading, you must update or delete the specified items one at a time. In both situations, BatchWriteItem
performs the specified put and delete operations in parallel, giving you the power of the thread pool approach without having to introduce complexity into your application.
Parallel processing reduces latency, but each specified put and delete request consumes the same number of write capacity units whether it is processed in parallel or not. Delete operations on nonexistent items consume one write capacity unit.
If one or more of the following is true, DynamoDB rejects the entire batch write operation:
One or more tables specified in the BatchWriteItem
request does not exist.
Primary key attributes specified on an item in the request do not match those in the corresponding table's primary key schema.
You try to perform multiple operations on the same item in the same BatchWriteItem
request. For example, you cannot put and delete the same item in the same BatchWriteItem
request.
Your request contains at least two items with identical hash and range keys (which essentially is two put operations).
There are more than 25 requests in the batch.
Any individual item in a batch exceeds 400 KB.
The total request size exceeds 16 MB.
The BatchWriteItem
operation puts or deletes multiple items in one or more tables. A single call to BatchWriteItem
can transmit up to 16MB of data over the network, consisting of up to 25 item put or delete operations. While individual items can be up to 400 KB once stored, it's important to note that an item's representation might be greater than 400KB while being sent in DynamoDB's JSON format for the API call. For more details on this distinction, see Naming Rules and Data Types.
BatchWriteItem
cannot update items. To update items, use the UpdateItem
action.
The individual PutItem
and DeleteItem
operations specified in BatchWriteItem
are atomic; however BatchWriteItem
as a whole is not. If any requested operations fail because the table's provisioned throughput is exceeded or an internal processing failure occurs, the failed operations are returned in the UnprocessedItems
response parameter. You can investigate and optionally resend the requests. Typically, you would call BatchWriteItem
in a loop. Each iteration would check for unprocessed items and submit a new BatchWriteItem
request with those unprocessed items until all items have been processed.
If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchWriteItem
returns a ProvisionedThroughputExceededException
.
If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.
For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.
With BatchWriteItem
, you can efficiently write or delete large amounts of data, such as from Amazon EMR, or copy data from another database into DynamoDB. In order to improve performance with these large-scale operations, BatchWriteItem
does not behave in the same way as individual PutItem
and DeleteItem
calls would. For example, you cannot specify conditions on individual put and delete requests, and BatchWriteItem
does not return deleted items in the response.
If you use a programming language that supports concurrency, you can use threads to write items in parallel. Your application must include the necessary logic to manage the threads. With languages that don't support threading, you must update or delete the specified items one at a time. In both situations, BatchWriteItem
performs the specified put and delete operations in parallel, giving you the power of the thread pool approach without having to introduce complexity into your application.
Parallel processing reduces latency, but each specified put and delete request consumes the same number of write capacity units whether it is processed in parallel or not. Delete operations on nonexistent items consume one write capacity unit.
If one or more of the following is true, DynamoDB rejects the entire batch write operation:
One or more tables specified in the BatchWriteItem
request does not exist.
Primary key attributes specified on an item in the request do not match those in the corresponding table's primary key schema.
You try to perform multiple operations on the same item in the same BatchWriteItem
request. For example, you cannot put and delete the same item in the same BatchWriteItem
request.
Your request contains at least two items with identical hash and range keys (which essentially is two put operations).
There are more than 25 requests in the batch.
Any individual item in a batch exceeds 400 KB.
The total request size exceeds 16 MB.
Creates a backup for an existing table.
Each time you create an on-demand backup, the entire table data is backed up. There is no limit to the number of on-demand backups that can be taken.
When you create an on-demand backup, a time marker of the request is cataloged, and the backup is created asynchronously, by applying all changes until the time of the request to the last full table snapshot. Backup requests are processed instantaneously and become available for restore within minutes.
You can call CreateBackup
at a maximum rate of 50 times per second.
All backups in DynamoDB work without consuming any provisioned throughput on the table.
If you submit a backup request on 2018-12-14 at 14:25:00, the backup is guaranteed to contain all data committed to the table up to 14:24:00, and data committed after 14:26:00 will not be. The backup might contain data modifications made between 14:24:00 and 14:26:00. On-demand backup does not support causal consistency.
Along with data, the following are also included on the backups:
Global secondary indexes (GSIs)
Local secondary indexes (LSIs)
Streams
Provisioned read and write capacity
Creates a global table from an existing table. A global table creates a replication relationship between two or more DynamoDB tables with the same table name in the provided Regions.
This operation only applies to Version 2017.11.29 of global tables.
If you want to add a new replica table to a global table, each of the following conditions must be true:
The table must have the same primary key as all of the other replicas.
The table must have the same name as all of the other replicas.
The table must have DynamoDB Streams enabled, with the stream containing both the new and the old images of the item.
None of the replica tables in the global table can contain any data.
If global secondary indexes are specified, then the following conditions must also be met:
The global secondary indexes must have the same name.
The global secondary indexes must have the same hash key and sort key (if present).
If local secondary indexes are specified, then the following conditions must also be met:
The local secondary indexes must have the same name.
The local secondary indexes must have the same hash key and sort key (if present).
Write capacity settings should be set consistently across your replica tables and secondary indexes. DynamoDB strongly recommends enabling auto scaling to manage the write capacity settings for all of your global tables replicas and indexes.
If you prefer to manage write capacity settings manually, you should provision equal replicated write capacity units to your replica tables. You should also provision equal replicated write capacity units to matching secondary indexes across your global table.
The CreateTable
operation adds a new table to your account. In an Amazon Web Services account, table names must be unique within each Region. That is, you can have two tables with same name if you create the tables in different Regions.
CreateTable
is an asynchronous operation. Upon receiving a CreateTable
request, DynamoDB immediately returns a response with a TableStatus
of CREATING
. After the table is created, DynamoDB sets the TableStatus
to ACTIVE
. You can perform read and write operations only on an ACTIVE
table.
You can optionally define secondary indexes on the new table, as part of the CreateTable
operation. If you want to create multiple tables with secondary indexes on them, you must create the tables sequentially. Only one table with secondary indexes can be in the CREATING
state at any given time.
You can use the DescribeTable
action to check the table status.
TransactWriteItems
is a synchronous write operation that groups up to 25 action requests. These actions can target items in different tables, but not in different Amazon Web Services accounts or Regions, and no two actions can target the same item. For example, you cannot both ConditionCheck
and Update
the same item. The aggregate size of the items in the transaction cannot exceed 4 MB.
The actions are completed atomically so that either all of them succeed, or all of them fail. They are defined by the following objects:
Put
 —  Initiates a PutItem
operation to write a new item. This structure specifies the primary key of the item to be written, the name of the table to write it in, an optional condition expression that must be satisfied for the write to succeed, a list of the item's attributes, and a field indicating whether to retrieve the item's attributes if the condition is not met.
Update
 —  Initiates an UpdateItem
operation to update an existing item. This structure specifies the primary key of the item to be updated, the name of the table where it resides, an optional condition expression that must be satisfied for the update to succeed, an expression that defines one or more attributes to be updated, and a field indicating whether to retrieve the item's attributes if the condition is not met.
Delete
 —  Initiates a DeleteItem
operation to delete an existing item. This structure specifies the primary key of the item to be deleted, the name of the table where it resides, an optional condition expression that must be satisfied for the deletion to succeed, and a field indicating whether to retrieve the item's attributes if the condition is not met.
ConditionCheck
 —  Applies a condition to an item that is not being modified by the transaction. This structure specifies the primary key of the item to be checked, the name of the table where it resides, a condition expression that must be satisfied for the transaction to succeed, and a field indicating whether to retrieve the item's attributes if the condition is not met.
DynamoDB rejects the entire TransactWriteItems
request if any of the following is true:
A condition in one of the condition expressions is not met.
An ongoing operation is in the process of updating the same item.
There is insufficient provisioned capacity for the transaction to be completed.
An item size becomes too large (bigger than 400 KB), a local secondary index (LSI) becomes too large, or a similar validation error occurs because of changes made by the transaction.
The aggregate size of the items in the transaction exceeds 4 MB.
There is a user error, such as an invalid data format.
Removes the association of tags from an Amazon DynamoDB resource. You can call UntagResource
up to five times per second, per account.
For an overview on tagging DynamoDB resources, see Tagging for DynamoDB in the Amazon DynamoDB Developer Guide.
", "UpdateContinuousBackups": " UpdateContinuousBackups
enables or disables point in time recovery for the specified table. A successful UpdateContinuousBackups
call returns the current ContinuousBackupsDescription
. Continuous backups are ENABLED
on all tables at table creation. If point in time recovery is enabled, PointInTimeRecoveryStatus
will be set to ENABLED.
Once continuous backups and point in time recovery are enabled, you can restore to any point in time within EarliestRestorableDateTime
and LatestRestorableDateTime
.
LatestRestorableDateTime
is typically 5 minutes before the current time. You can restore your table to any point in time during the last 35 days.
Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of AWS Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an AWS managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table.
", + "UpdateContributorInsights": "Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of Amazon Web Services Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an Amazon Web Services managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table.
", "UpdateGlobalTable": "Adds or removes replicas in the specified global table. The global table must already exist to be able to use this operation. Any replica to be added must be empty, have the same name as the global table, have the same key schema, have DynamoDB Streams enabled, and have the same provisioned and maximum write capacity units.
Although you can use UpdateGlobalTable
to add replicas and remove replicas in a single request, for simplicity we recommend that you issue separate requests for adding or removing replicas.
If global secondary indexes are specified, then the following conditions must also be met:
The global secondary indexes must have the same name.
The global secondary indexes must have the same hash key and sort key (if present).
The global secondary indexes must have the same provisioned and maximum write capacity units.
Updates settings for a global table.
", "UpdateItem": "Edits an existing item's attributes, or adds a new item to the table if it does not already exist. You can put, delete, or add attribute values. You can also perform a conditional update on an existing item (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).
You can also return the item's attribute values in the same UpdateItem
operation using the ReturnValues
parameter.
The current state of point in time recovery:
ENABLING
- Point in time recovery is being enabled.
ENABLED
- Point in time recovery is enabled.
DISABLED
- Point in time recovery is disabled.
The current state of point in time recovery:
ENABLED
- Point in time recovery is enabled.
DISABLED
- Point in time recovery is disabled.
The value for the cache node type.
", "CacheNodeUpdateStatus$CacheNodeId": "The node ID of the cache cluster
", "CacheParameterGroup$CacheParameterGroupName": "The name of the cache parameter group.
", - "CacheParameterGroup$CacheParameterGroupFamily": "The name of the cache parameter group family that this cache parameter group is compatible with.
Valid values are: memcached1.4
| memcached1.5
| memcached1.6
| redis2.6
| redis2.8
| redis3.2
| redis4.0
| redis5.0
| redis6.0
|
The name of the cache parameter group family that this cache parameter group is compatible with.
Valid values are: memcached1.4
| memcached1.5
| memcached1.6
| redis2.6
| redis2.8
| redis3.2
| redis4.0
| redis5.0
| redis6.x
|
The description for this cache parameter group.
", "CacheParameterGroup$ARN": "The ARN (Amazon Resource Name) of the cache parameter group.
", "CacheParameterGroupDetails$Marker": "Provides an identifier to allow retrieval of paginated results.
", @@ -2075,13 +2075,13 @@ "CreateCacheClusterMessage$CacheParameterGroupName": "The name of the parameter group to associate with this cluster. If this argument is omitted, the default parameter group for the specified engine is used. You cannot use any parameter group which has cluster-enabled='yes'
when creating a cluster.
The name of the subnet group to be used for the cluster.
Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (Amazon VPC).
If you're going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see Subnets and Subnet Groups.
The name of a Redis snapshot from which to restore data into the new node group (shard). The snapshot status changes to restoring
while the new node group (shard) is being created.
This parameter is only valid if the Engine
parameter is redis
.
Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid values for ddd
are:
Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.
", "CreateCacheClusterMessage$NotificationTopicArn": "The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.
The Amazon SNS topic owner must be the same as the cluster owner.
The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).
Example: 05:00-09:00
If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.
This parameter is only valid if the Engine
parameter is redis
.
Reserved parameter. The password used to access a password protected server.
Password constraints:
Must be only printable ASCII characters.
Must be at least 16 characters and no more than 128 characters in length.
The only permitted printable special characters are !, &, #, $, ^, <, >, and -. Other printable special characters cannot be used in the AUTH token.
For more information, see AUTH password at http://redis.io/commands/AUTH.
", "CreateCacheClusterMessage$PreferredOutpostArn": "The outpost ARN in which the cache cluster is created.
", "CreateCacheParameterGroupMessage$CacheParameterGroupName": "A user-specified name for the cache parameter group.
", - "CreateCacheParameterGroupMessage$CacheParameterGroupFamily": "The name of the cache parameter group family that the cache parameter group can be used with.
Valid values are: memcached1.4
| memcached1.5
| memcached1.6
| redis2.6
| redis2.8
| redis3.2
| redis4.0
| redis5.0
| redis6.0
| redis6.2
The name of the cache parameter group family that the cache parameter group can be used with.
Valid values are: memcached1.4
| memcached1.5
| memcached1.6
| redis2.6
| redis2.8
| redis3.2
| redis4.0
| redis5.0
| redis6.x
A user-specified description for the cache parameter group.
", "CreateCacheSecurityGroupMessage$CacheSecurityGroupName": "A name for the cache security group. This value is stored as a lowercase string.
Constraints: Must contain no more than 255 alphanumeric characters. Cannot be the word \"Default\".
Example: mysecuritygroup
A description for the cache security group.
", diff --git a/models/apis/elasticmapreduce/2009-03-31/docs-2.json b/models/apis/elasticmapreduce/2009-03-31/docs-2.json index 9cc5a6db3b6..38f89a4e117 100644 --- a/models/apis/elasticmapreduce/2009-03-31/docs-2.json +++ b/models/apis/elasticmapreduce/2009-03-31/docs-2.json @@ -4,7 +4,7 @@ "operations": { "AddInstanceFleet": "Adds an instance fleet to a running cluster.
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x.
Adds one or more instance groups to a running cluster.
", - "AddJobFlowSteps": "AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps are allowed in each job flow.
If your cluster is long-running (such as a Hive data warehouse) or complex, you may require more than 256 steps to process your data. You can bypass the 256-step limitation in various ways, including using SSH to connect to the master node and submitting queries directly to the software running on the master node, such as Hive and Hadoop. For more information on how to do this, see Add More than 256 Steps to a Cluster in the Amazon EMR Management Guide.
A step specifies the location of a JAR file stored either on the master node of the cluster or in Amazon S3. Each step is performed by the main function of the main class of the JAR file. The main class can be specified either in the manifest of the JAR or by using the MainFunction parameter of the step.
Amazon EMR executes each step in the order listed. For a step to be considered complete, the main function must exit with a zero exit code and all Hadoop jobs started while the step was running must have completed and run successfully.
You can only add steps to a cluster that is in one of the following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.
", + "AddJobFlowSteps": "AddJobFlowSteps adds new steps to a running cluster. A maximum of 256 steps are allowed in each job flow.
If your cluster is long-running (such as a Hive data warehouse) or complex, you may require more than 256 steps to process your data. You can bypass the 256-step limitation in various ways, including using SSH to connect to the master node and submitting queries directly to the software running on the master node, such as Hive and Hadoop. For more information on how to do this, see Add More than 256 Steps to a Cluster in the Amazon EMR Management Guide.
A step specifies the location of a JAR file stored either on the master node of the cluster or in Amazon S3. Each step is performed by the main function of the main class of the JAR file. The main class can be specified either in the manifest of the JAR or by using the MainFunction parameter of the step.
Amazon EMR executes each step in the order listed. For a step to be considered complete, the main function must exit with a zero exit code and all Hadoop jobs started while the step was running must have completed and run successfully.
You can only add steps to a cluster that is in one of the following states: STARTING, BOOTSTRAPPING, RUNNING, or WAITING.
The string values passed into HadoopJarStep
object cannot exceed a total of 10240 characters.
Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR Studio. Tags make it easier to associate resources in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters.
", "CancelSteps": "Cancels a pending step or steps in a running cluster. Available only in Amazon EMR versions 4.8.0 and later, excluding version 5.0.0. A maximum of 256 steps are allowed in each CancelSteps request. CancelSteps is idempotent but asynchronous; it does not guarantee that a step will be canceled, even if the request is successfully submitted. When you use Amazon EMR versions 5.28.0 and later, you can cancel steps that are in a PENDING
or RUNNING
state. In earlier versions of Amazon EMR, you can only cancel steps that are in a PENDING
state.
Creates a security configuration, which is stored in the service and can be specified when a cluster is created.
", @@ -39,7 +39,7 @@ "ModifyInstanceFleet": "Modifies the target On-Demand and target Spot capacities for the instance fleet with the specified InstanceFleetID within the cluster specified using ClusterID. The call either succeeds or fails atomically.
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions.
ModifyInstanceGroups modifies the number of nodes and configuration settings of an instance group. The input parameters include the new target instance count for the group and the instance group ID. The call will either succeed or fail atomically.
", "PutAutoScalingPolicy": "Creates or updates an automatic scaling policy for a core instance group or task instance group in an Amazon EMR cluster. The automatic scaling policy defines how an instance group dynamically adds and terminates EC2 instances in response to the value of a CloudWatch metric.
", - "PutAutoTerminationPolicy": "Creates or updates an auto-termination policy for an Amazon EMR cluster. An auto-termination policy defines the amount of idle time in seconds after which a cluster automatically terminates. For alternative cluster termination options, see Control cluster termination.
", + "PutAutoTerminationPolicy": "Auto-termination is supported in Amazon EMR versions 5.30.0 and 6.1.0 and later. For more information, see Using an auto-termination policy.
Creates or updates an auto-termination policy for an Amazon EMR cluster. An auto-termination policy defines the amount of idle time in seconds after which a cluster automatically terminates. For alternative cluster termination options, see Control cluster termination.
", "PutBlockPublicAccessConfiguration": "Creates or updates an Amazon EMR block public access configuration for your Amazon Web Services account in the current Region. For more information see Configure Block Public Access for Amazon EMR in the Amazon EMR Management Guide.
", "PutManagedScalingPolicy": "Creates or updates a managed scaling policy for an Amazon EMR cluster. The managed scaling policy defines the limits for resources, such as EC2 instances that can be added or terminated from a cluster. The policy only applies to the core and task nodes. The master node cannot be scaled after initial configuration.
", "RemoveAutoScalingPolicy": "Removes an automatic scaling policy from a specified instance group within an EMR cluster.
", @@ -48,7 +48,7 @@ "RemoveTags": "Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR Studio. Tags make it easier to associate resources in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters.
The following example removes the stack tag with value Prod from a cluster:
", "RunJobFlow": "RunJobFlow creates and starts running a new cluster (job flow). The cluster runs the steps specified. After the steps complete, the cluster stops and the HDFS partition is lost. To prevent loss of data, configure the last step of the job flow to store results in Amazon S3. If the JobFlowInstancesConfig KeepJobFlowAliveWhenNoSteps
parameter is set to TRUE
, the cluster transitions to the WAITING state rather than shutting down after the steps have completed.
For additional protection, you can set the JobFlowInstancesConfig TerminationProtected
parameter to TRUE
to lock the cluster and prevent it from being terminated by API call, user intervention, or in the event of a job flow error.
A maximum of 256 steps are allowed in each job flow.
If your cluster is long-running (such as a Hive data warehouse) or complex, you may require more than 256 steps to process your data. You can bypass the 256-step limitation in various ways, including using the SSH shell to connect to the master node and submitting queries directly to the software running on the master node, such as Hive and Hadoop. For more information on how to do this, see Add More than 256 Steps to a Cluster in the Amazon EMR Management Guide.
For long running clusters, we recommend that you periodically store your results.
The instance fleets configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. The RunJobFlow request can contain InstanceFleets parameters or InstanceGroups parameters, but not both.
SetTerminationProtection locks a cluster (job flow) so the EC2 instances in the cluster cannot be terminated by user intervention, an API call, or in the event of a job-flow error. The cluster still terminates upon successful completion of the job flow. Calling SetTerminationProtection
on a cluster is similar to calling the Amazon EC2 DisableAPITermination
API on all EC2 instances in a cluster.
SetTerminationProtection
is used to prevent accidental termination of a cluster and to ensure that in the event of an error, the instances persist so that you can recover any data stored in their ephemeral instance storage.
To terminate a cluster that has been locked by setting SetTerminationProtection
to true
, you must first unlock the job flow by a subsequent call to SetTerminationProtection
in which you set the value to false
.
For more information, seeManaging Cluster Termination in the Amazon EMR Management Guide.
", - "SetVisibleToAllUsers": "Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions on the cluster, regardless of IAM permissions policies attached to other IAM principals.
This action works on running clusters. When you create a cluster, use the RunJobFlowInput$VisibleToAllUsers parameter.
For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
", + "SetVisibleToAllUsers": "The SetVisibleToAllUsers parameter is no longer supported. Your cluster may be visible to all users in your account. To restrict cluster access using an IAM policy, see Identity and Access Management for EMR.
Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions on the cluster, regardless of IAM permissions policies attached to other IAM principals.
This action works on running clusters. When you create a cluster, use the RunJobFlowInput$VisibleToAllUsers parameter.
For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
", "StartNotebookExecution": "Starts a notebook execution.
", "StopNotebookExecution": "Stops a notebook execution.
", "TerminateJobFlows": "TerminateJobFlows shuts a list of clusters (job flows) down. When a job flow is shut down, any step not yet completed is canceled and the EC2 instances on which the cluster is running are stopped. Any log files not already saved are uploaded to Amazon S3 if a LogUri was specified when the cluster was created.
The maximum number of clusters allowed is 10. The call to TerminateJobFlows
is asynchronous. Depending on the configuration of the cluster, it may take up to 1-5 minutes for the cluster to completely terminate and release allocated resources, such as Amazon EC2 instances.
The applications installed on this cluster.
", - "RunJobFlowInput$Applications": "Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of applications for Amazon EMR to install and configure when launching the cluster. For a list of applications available for each Amazon EMR release version, see the Amazon EMR Release Guide.
" + "RunJobFlowInput$Applications": "Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of applications for Amazon EMR to install and configure when launching the cluster. For a list of applications available for each Amazon EMR release version, see the Amazon EMRRelease Guide.
" } }, "ArnType": { @@ -208,13 +208,13 @@ "BlockPublicAccessConfiguration$BlockPublicSecurityGroupRules": "Indicates whether Amazon EMR block public access is enabled (true
) or disabled (false
). By default, the value is false
for accounts that have created EMR clusters before July 2019. For accounts created after this, the default is true
.
Specifies whether the cluster should terminate after completing all steps.
", "Cluster$TerminationProtected": "Indicates whether Amazon EMR will lock the cluster to prevent the EC2 instances from being terminated by an API call or user intervention, or in the event of a cluster error.
", - "Cluster$VisibleToAllUsers": "Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions on the cluster that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions, regardless of IAM permissions policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a cluster using the EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console. IAM principals that are allowed to perform actions on the cluster can use the SetVisibleToAllUsers action to change the value on a running cluster. For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions, regardless of IAM permissions policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a cluster using the EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console. IAM principals that are authorized to perform actions on the cluster can use the SetVisibleToAllUsers action to change the value on a running cluster. For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions on the cluster that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions, regardless of IAM permissions policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a cluster using the EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console.
Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When true
, IAM principals in the Amazon Web Services account can perform EMR cluster actions that their IAM policies allow. When false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions, regardless of IAM permissions policies attached to other IAM principals.
The default value is true
if a value is not provided when creating a cluster using the EMR API RunJobFlow command, the CLI create-cluster command, or the Amazon Web Services Management Console.
Specifies whether the cluster should remain available after completing all steps. Defaults to true
. For more information about configuring cluster termination, see Control Cluster Termination in the EMR Management Guide.
Specifies whether to lock the cluster to prevent the Amazon EC2 instances from being terminated by API call, user intervention, or in the event of a job-flow error.
", "JobFlowInstancesDetail$KeepJobFlowAliveWhenNoSteps": "Specifies whether the cluster should remain available after completing all steps.
", "JobFlowInstancesDetail$TerminationProtected": "Specifies whether the Amazon EC2 instances in the cluster are protected from termination by API calls, user intervention, or in the event of a job-flow error.
", - "RunJobFlowInput$VisibleToAllUsers": "Set this value to true
so that IAM principals in the Amazon Web Services account associated with the cluster can perform EMR actions on the cluster that their IAM policies allow. This value defaults to true
for clusters created using the EMR API or the CLI create-cluster command.
When set to false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions for the cluster, regardless of the IAM permissions policies attached to other IAM principals. For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
The VisibleToAllUsers parameter is no longer supported. By default, the value is set to true
. Setting it to false
now has no effect.
Set this value to true
so that IAM principals in the Amazon Web Services account associated with the cluster can perform EMR actions on the cluster that their IAM policies allow. This value defaults to true
for clusters created using the EMR API or the CLI create-cluster command.
When set to false
, only the IAM principal that created the cluster and the Amazon Web Services account root user can perform EMR actions for the cluster, regardless of the IAM permissions policies attached to other IAM principals. For more information, see Understanding the EMR Cluster VisibleToAllUsers Setting in the Amazon EMRManagement Guide.
A Boolean that indicates whether to protect the cluster and prevent the Amazon EC2 instances in the cluster from shutting down due to API calls, user intervention, or job-flow error.
", "SetVisibleToAllUsersInput$VisibleToAllUsers": "A value of true
indicates that an IAM principal in the Amazon Web Services account can perform EMR actions on the cluster that the IAM policies attached to the principal allow. A value of false
indicates that only the IAM principal that created the cluster and the Amazon Web Services root user can perform EMR actions on the cluster.
State of instance group. The following values are deprecated: STARTING, TERMINATED, and FAILED.
", + "InstanceGroupDetail$State": "State of instance group. The following values are no longer supported: STARTING, TERMINATED, and FAILED.
", "InstanceGroupStatus$State": "The current state of the instance group.
" } }, @@ -1725,7 +1725,7 @@ } }, "SpotProvisioningSpecification": { - "base": "The launch specification for Spot Instances in the instance fleet, which determines the defined duration, provisioning timeout behavior, and allocation strategy.
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy is available in Amazon EMR version 5.12.1 and later.
The launch specification for Spot Instances in the instance fleet, which determines the defined duration, provisioning timeout behavior, and allocation strategy.
The instance fleet configuration is available only in Amazon EMR versions 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy is available in Amazon EMR version 5.12.1 and later.
Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.
The launch specification for Spot Instances in the fleet, which determines the defined duration, provisioning timeout behavior, and allocation strategy.
" } @@ -1944,9 +1944,9 @@ "StringMap$key": null, "StringMap$value": null, "SubnetIdList$member": null, - "Tag$Key": "A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag .
", + "Tag$Key": "A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag.
", "Tag$Value": "A user-defined value, which is optional in a tag. For more information, see Tag Clusters.
", - "VolumeSpecification$VolumeType": "The volume type. Volume types supported are gp2, io1, standard.
" + "VolumeSpecification$VolumeType": "The volume type. Volume types supported are gp2, io1, and standard.
" } }, "StringList": { @@ -2068,7 +2068,7 @@ "InstanceTypeConfig$WeightedCapacity": "The number of units that a provisioned instance of this type provides toward fulfilling the target capacities defined in InstanceFleetConfig. This value is 1 for a master instance fleet, and must be 1 or greater for core and task instance fleets. Defaults to 1 if not specified.
", "InstanceTypeSpecification$WeightedCapacity": "The number of units that a provisioned instance of this type provides toward fulfilling the target capacities defined in InstanceFleetConfig. Capacity values represent performance characteristics such as vCPUs, memory, or I/O. If not specified, the default value is 1.
", "SpotProvisioningSpecification$TimeoutDurationMinutes": "The spot provisioning timeout period in minutes. If Spot Instances are not provisioned within this time period, the TimeOutAction
is taken. Minimum value is 5 and maximum value is 1440. The timeout applies only during initial provisioning, when the cluster is first created.
The defined duration for Spot Instances (also known as Spot blocks) in minutes. When specified, the Spot Instance does not terminate before the defined duration expires, and defined duration pricing for Spot Instances applies. Valid values are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as a Spot Instance receives its instance ID. At the end of the duration, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates.
" + "SpotProvisioningSpecification$BlockDurationMinutes": "The defined duration for Spot Instances (also known as Spot blocks) in minutes. When specified, the Spot Instance does not terminate before the defined duration expires, and defined duration pricing for Spot Instances applies. Valid values are 60, 120, 180, 240, 300, or 360. The duration period starts as soon as a Spot Instance receives its instance ID. At the end of the duration, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates.
Spot Instances with a defined duration (also known as Spot blocks) are no longer available to new customers from July 1, 2021. For customers who have previously used the feature, we will continue to support Spot Instances with a defined duration until December 31, 2022.
Allows the source domain owner to delete an existing outbound cross-cluster search connection.
", "DeletePackage": "Delete the package.
", "DescribeDomainAutoTunes": "Provides scheduled Auto-Tune action details for the Elasticsearch domain, such as Auto-Tune action type, description, severity, and scheduled date.
", + "DescribeDomainChangeProgress": "Returns information about the current blue/green deployment happening on a domain, including a change ID, status, and progress stages.
", "DescribeElasticsearchDomain": "Returns domain configuration information about the specified Elasticsearch domain, including the domain ID, domain endpoint, and domain ARN.
", "DescribeElasticsearchDomainConfig": "Provides cluster configuration information about the specified Elasticsearch domain, such as the state, creation date, update version, and update date for cluster options.
", "DescribeElasticsearchDomains": "Returns domain configuration information about the specified Elasticsearch domains, including the domain ID, domain endpoint, and domain ARN.
", @@ -282,6 +283,44 @@ "refs": { } }, + "ChangeProgressDetails": { + "base": "Specifies change details of the domain configuration change.
", + "refs": { + "ElasticsearchDomainConfig$ChangeProgressDetails": "Specifies change details of the domain configuration change.
", + "ElasticsearchDomainStatus$ChangeProgressDetails": "Specifies change details of the domain configuration change.
", + "UpgradeElasticsearchDomainResponse$ChangeProgressDetails": null + } + }, + "ChangeProgressStage": { + "base": "A progress stage details of a specific domain configuration change.
", + "refs": { + "ChangeProgressStageList$member": null + } + }, + "ChangeProgressStageList": { + "base": "The list of progress stages of a specific domain configuration change.
", + "refs": { + "ChangeProgressStatusDetails$ChangeProgressStages": "The specific stages that the domain is going through to perform the configuration change.
" + } + }, + "ChangeProgressStageName": { + "base": null, + "refs": { + "ChangeProgressStage$Name": "The name of the specific progress stage.
" + } + }, + "ChangeProgressStageStatus": { + "base": null, + "refs": { + "ChangeProgressStage$Status": "The overall status of a specific progress stage.
" + } + }, + "ChangeProgressStatusDetails": { + "base": "The progress details of a specific domain configuration change.
", + "refs": { + "DescribeDomainChangeProgressResponse$ChangeProgressStatus": "Progress information for the configuration change that is requested in the DescribeDomainChangeProgress
request.
ARN of the Cloudwatch log group to which log needs to be published.
", "refs": { @@ -465,6 +504,16 @@ "refs": { } }, + "DescribeDomainChangeProgressRequest": { + "base": "Container for the parameters to the DescribeDomainChangeProgress
operation. Specifies the domain name and optional change specific identity for which you want progress information.
The result of a DescribeDomainChangeProgress
request. Contains the progress information of the requested domain change.
Container for the parameters to the DescribeElasticsearchDomainConfig
operation. Specifies the domain name for which you want configuration information.
The description of the progress stage.
" + } + }, "DisableTimestamp": { "base": null, "refs": { @@ -660,6 +715,7 @@ "CreateElasticsearchDomainRequest$DomainName": "The name of the Elasticsearch domain that you are creating. Domain names are unique across the domains owned by an account within an AWS region. Domain names must start with a lowercase letter and can contain the following characters: a-z (lowercase), 0-9, and - (hyphen).
", "DeleteElasticsearchDomainRequest$DomainName": "The name of the Elasticsearch domain that you want to permanently delete.
", "DescribeDomainAutoTunesRequest$DomainName": "Specifies the domain name for which you want Auto-Tune action details.
", + "DescribeDomainChangeProgressRequest$DomainName": "The domain you want to get the progress information about.
", "DescribeElasticsearchDomainConfigRequest$DomainName": "The Elasticsearch domain that you want to get information about.
", "DescribeElasticsearchDomainRequest$DomainName": "The name of the Elasticsearch domain for which you want information.
", "DescribeElasticsearchInstanceTypeLimitsRequest$DomainName": " DomainName represents the name of the Domain that we are trying to modify. This should be present only if we are querying for Elasticsearch Limits
for existing domain.
The unique change identifier associated with a specific domain configuration change.
", + "ChangeProgressStatusDetails$ChangeId": "The unique change identifier associated with a specific domain configuration change.
", + "DescribeDomainChangeProgressRequest$ChangeId": "The specific change ID for which you want to get progress information. This is an optional parameter. If omitted, the service returns information about the most recent configuration change.
", "DescribeReservedElasticsearchInstanceOfferingsRequest$ReservedElasticsearchInstanceOfferingId": "The offering identifier filter value. Use this parameter to show only the available offering that matches the specified reservation identifier.
", "DescribeReservedElasticsearchInstancesRequest$ReservedElasticsearchInstanceId": "The reserved instance identifier filter value. Use this parameter to show only the reservation that matches the specified reserved Elasticsearch instance ID.
", "PurchaseReservedElasticsearchInstanceOfferingRequest$ReservedElasticsearchInstanceOfferingId": "The ID of the reserved Elasticsearch instance offering to purchase.
", @@ -1077,6 +1136,7 @@ "LastUpdated": { "base": null, "refs": { + "ChangeProgressStage$LastUpdated": "The last updated timestamp of the progress stage.
", "DomainPackageDetails$LastUpdated": "Timestamp of the most-recent update to the association status.
", "PackageDetails$LastUpdatedAt": null } @@ -1237,6 +1297,7 @@ "Message": { "base": null, "refs": { + "ChangeProgressDetails$Message": "Contains an optional message associated with the domain configuration change.
", "DryRunResults$Message": "Contains an optional message associated with the DryRunResults.
" } }, @@ -1341,6 +1402,12 @@ "DescribeOutboundCrossClusterSearchConnectionsResponse$CrossClusterSearchConnections": "Consists of list of OutboundCrossClusterSearchConnection
matching the specified filter criteria.
The overall status value of the domain configuration change.
", + "refs": { + "ChangeProgressStatusDetails$Status": "The overall status of the domain configuration change. This field can take the following values: PENDING
, PROCESSING
, COMPLETED
and FAILED
The list of properties involved in the domain configuration change that are still in pending.
", + "ChangeProgressStatusDetails$CompletedProperties": "The list of properties involved in the domain configuration change that are completed.
", "RemoveTagsRequest$TagKeys": "Specifies the TagKey
list which you want to remove from the Elasticsearch domain.
Specifies the subnets for VPC endpoint.
", "VPCDerivedInfo$AvailabilityZones": "The availability zones for the Elasticsearch domain. Exists only if the domain was created with VPCOptions.
", @@ -1794,6 +1863,12 @@ "Duration$Unit": "Specifies the unit of a maintenance schedule duration. Valid value is HOURS. See the Developer Guide for more information.
" } }, + "TotalNumberOfStages": { + "base": null, + "refs": { + "ChangeProgressStatusDetails$TotalNumberOfStages": "The total number of stages required for the configuration change.
" + } + }, "UIntValue": { "base": null, "refs": { @@ -1826,6 +1901,7 @@ "refs": { "AutoTuneStatus$CreationDate": "Timestamp which tells Auto-Tune options creation date .
", "AutoTuneStatus$UpdateDate": "Timestamp which tells Auto-Tune options last updated time.
", + "ChangeProgressStatusDetails$StartTime": "The time at which the configuration change is made on the domain.
", "OptionStatus$CreationDate": "Timestamp which tells the creation date for the entity.
", "OptionStatus$UpdateDate": "Timestamp which tells the last updated time for the entity.
", "ReservedElasticsearchInstance$StartTime": "The time the reservation started.
" diff --git a/models/apis/fis/2020-12-01/api-2.json b/models/apis/fis/2020-12-01/api-2.json index 809b28d8e37..5ebdb8a8a42 100644 --- a/models/apis/fis/2020-12-01/api-2.json +++ b/models/apis/fis/2020-12-01/api-2.json @@ -85,6 +85,20 @@ {"shape":"ResourceNotFoundException"} ] }, + "GetTargetResourceType":{ + "name":"GetTargetResourceType", + "http":{ + "method":"GET", + "requestUri":"/targetResourceTypes/{resourceType}", + "responseCode":200 + }, + "input":{"shape":"GetTargetResourceTypeRequest"}, + "output":{"shape":"GetTargetResourceTypeResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "ListActions":{ "name":"ListActions", "http":{ @@ -134,6 +148,19 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"} }, + "ListTargetResourceTypes":{ + "name":"ListTargetResourceTypes", + "http":{ + "method":"GET", + "requestUri":"/targetResourceTypes", + "responseCode":200 + }, + "input":{"shape":"ListTargetResourceTypesRequest"}, + "output":{"shape":"ListTargetResourceTypesResponse"}, + "errors":[ + {"shape":"ValidationException"} + ] + }, "StartExperiment":{ "name":"StartExperiment", "http":{ @@ -263,7 +290,7 @@ "ActionTarget":{ "type":"structure", "members":{ - "resourceType":{"shape":"TargetResourceType"} + "resourceType":{"shape":"TargetResourceTypeId"} } }, "ActionTargetMap":{ @@ -353,11 +380,12 @@ "selectionMode" ], "members":{ - "resourceType":{"shape":"ResourceType"}, + "resourceType":{"shape":"TargetResourceTypeId"}, "resourceArns":{"shape":"ResourceArnList"}, "resourceTags":{"shape":"TagMap"}, "filters":{"shape":"ExperimentTemplateTargetFilterInputList"}, - "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"} + "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"}, + "parameters":{"shape":"ExperimentTemplateTargetParameterMap"} } }, "CreateExperimentTemplateTargetInputMap":{ @@ -552,11 +580,12 @@ "ExperimentTarget":{ "type":"structure", "members":{ - "resourceType":{"shape":"ResourceType"}, + "resourceType":{"shape":"TargetResourceTypeId"}, "resourceArns":{"shape":"ResourceArnList"}, "resourceTags":{"shape":"TagMap"}, "filters":{"shape":"ExperimentTargetFilterList"}, - "selectionMode":{"shape":"ExperimentTargetSelectionMode"} + "selectionMode":{"shape":"ExperimentTargetSelectionMode"}, + "parameters":{"shape":"ExperimentTargetParameterMap"} } }, "ExperimentTargetFilter":{ @@ -594,6 +623,21 @@ "max":64, "pattern":"[\\S]+" }, + "ExperimentTargetParameterMap":{ + "type":"map", + "key":{"shape":"ExperimentTargetParameterName"}, + "value":{"shape":"ExperimentTargetParameterValue"} + }, + "ExperimentTargetParameterName":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, + "ExperimentTargetParameterValue":{ + "type":"string", + "max":1024, + "min":1 + }, "ExperimentTargetSelectionMode":{ "type":"string", "max":64, @@ -710,11 +754,12 @@ "ExperimentTemplateTarget":{ "type":"structure", "members":{ - "resourceType":{"shape":"ResourceType"}, + "resourceType":{"shape":"TargetResourceTypeId"}, "resourceArns":{"shape":"ResourceArnList"}, "resourceTags":{"shape":"TagMap"}, "filters":{"shape":"ExperimentTemplateTargetFilterList"}, - "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"} + "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"}, + "parameters":{"shape":"ExperimentTemplateTargetParameterMap"} } }, "ExperimentTemplateTargetFilter":{ @@ -767,6 +812,22 @@ "max":64, "pattern":"[\\S]+" }, + "ExperimentTemplateTargetParameterMap":{ + "type":"map", + "key":{"shape":"ExperimentTemplateTargetParameterName"}, + "value":{"shape":"ExperimentTemplateTargetParameterValue"} + }, + "ExperimentTemplateTargetParameterName":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, + "ExperimentTemplateTargetParameterValue":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"^[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]+$" + }, "ExperimentTemplateTargetSelectionMode":{ "type":"string", "max":64, @@ -823,6 +884,23 @@ "experimentTemplate":{"shape":"ExperimentTemplate"} } }, + "GetTargetResourceTypeRequest":{ + "type":"structure", + "required":["resourceType"], + "members":{ + "resourceType":{ + "shape":"TargetResourceTypeId", + "location":"uri", + "locationName":"resourceType" + } + } + }, + "GetTargetResourceTypeResponse":{ + "type":"structure", + "members":{ + "targetResourceType":{"shape":"TargetResourceType"} + } + }, "LastUpdateTime":{"type":"timestamp"}, "ListActionsMaxResults":{ "type":"integer", @@ -925,6 +1003,34 @@ "tags":{"shape":"TagMap"} } }, + "ListTargetResourceTypesMaxResults":{ + "type":"integer", + "max":100, + "min":1 + }, + "ListTargetResourceTypesRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListTargetResourceTypesMaxResults", + "box":true, + "location":"querystring", + "locationName":"maxResults" + }, + "nextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListTargetResourceTypesResponse":{ + "type":"structure", + "members":{ + "targetResourceTypes":{"shape":"TargetResourceTypeSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, "NextToken":{ "type":"string", "max":1024, @@ -950,11 +1056,6 @@ "error":{"httpStatusCode":404}, "exception":true }, - "ResourceType":{ - "type":"string", - "max":64, - "pattern":"[\\S]+" - }, "RoleArn":{ "type":"string", "max":2048, @@ -1059,10 +1160,60 @@ "pattern":"[\\s\\S]*" }, "TargetResourceType":{ + "type":"structure", + "members":{ + "resourceType":{"shape":"TargetResourceTypeId"}, + "description":{"shape":"TargetResourceTypeDescription"}, + "parameters":{"shape":"TargetResourceTypeParameterMap"} + } + }, + "TargetResourceTypeDescription":{ + "type":"string", + "max":512, + "pattern":"[\\s\\S]+" + }, + "TargetResourceTypeId":{ "type":"string", "max":128, "pattern":"[\\S]+" }, + "TargetResourceTypeParameter":{ + "type":"structure", + "members":{ + "description":{"shape":"TargetResourceTypeParameterDescription"}, + "required":{ + "shape":"TargetResourceTypeParameterRequired", + "box":true + } + } + }, + "TargetResourceTypeParameterDescription":{ + "type":"string", + "max":512, + "pattern":"[\\s\\S]+" + }, + "TargetResourceTypeParameterMap":{ + "type":"map", + "key":{"shape":"TargetResourceTypeParameterName"}, + "value":{"shape":"TargetResourceTypeParameter"} + }, + "TargetResourceTypeParameterName":{ + "type":"string", + "max":64, + "pattern":"[\\S]+" + }, + "TargetResourceTypeParameterRequired":{"type":"boolean"}, + "TargetResourceTypeSummary":{ + "type":"structure", + "members":{ + "resourceType":{"shape":"TargetResourceTypeId"}, + "description":{"shape":"TargetResourceTypeDescription"} + } + }, + "TargetResourceTypeSummaryList":{ + "type":"list", + "member":{"shape":"TargetResourceTypeSummary"} + }, "UntagResourceRequest":{ "type":"structure", "required":["resourceArn"], @@ -1140,11 +1291,12 @@ "selectionMode" ], "members":{ - "resourceType":{"shape":"ResourceType"}, + "resourceType":{"shape":"TargetResourceTypeId"}, "resourceArns":{"shape":"ResourceArnList"}, "resourceTags":{"shape":"TagMap"}, "filters":{"shape":"ExperimentTemplateTargetFilterInputList"}, - "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"} + "selectionMode":{"shape":"ExperimentTemplateTargetSelectionMode"}, + "parameters":{"shape":"ExperimentTemplateTargetParameterMap"} } }, "UpdateExperimentTemplateTargetInputMap":{ diff --git a/models/apis/fis/2020-12-01/docs-2.json b/models/apis/fis/2020-12-01/docs-2.json index 51657138c6d..5210540ebf0 100644 --- a/models/apis/fis/2020-12-01/docs-2.json +++ b/models/apis/fis/2020-12-01/docs-2.json @@ -7,10 +7,12 @@ "GetAction": "Gets information about the specified FIS action.
", "GetExperiment": "Gets information about the specified experiment.
", "GetExperimentTemplate": "Gets information about the specified experiment template.
", + "GetTargetResourceType": "Gets information about the specified resource type.
", "ListActions": "Lists the available FIS actions.
", "ListExperimentTemplates": "Lists your experiment templates.
", "ListExperiments": "Lists your experiments.
", "ListTagsForResource": "Lists the tags for the specified resource.
", + "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.
", @@ -407,6 +409,24 @@ "ExperimentTargetMap$key": null } }, + "ExperimentTargetParameterMap": { + "base": null, + "refs": { + "ExperimentTarget$parameters": "The resource type parameters.
" + } + }, + "ExperimentTargetParameterName": { + "base": null, + "refs": { + "ExperimentTargetParameterMap$key": null + } + }, + "ExperimentTargetParameterValue": { + "base": null, + "refs": { + "ExperimentTargetParameterMap$value": null + } + }, "ExperimentTargetSelectionMode": { "base": null, "refs": { @@ -610,6 +630,26 @@ "UpdateExperimentTemplateTargetInputMap$key": null } }, + "ExperimentTemplateTargetParameterMap": { + "base": null, + "refs": { + "CreateExperimentTemplateTargetInput$parameters": "The resource type parameters.
", + "ExperimentTemplateTarget$parameters": "The resource type parameters.
", + "UpdateExperimentTemplateTargetInput$parameters": "The resource type parameters.
" + } + }, + "ExperimentTemplateTargetParameterName": { + "base": null, + "refs": { + "ExperimentTemplateTargetParameterMap$key": null + } + }, + "ExperimentTemplateTargetParameterValue": { + "base": null, + "refs": { + "ExperimentTemplateTargetParameterMap$value": null + } + }, "ExperimentTemplateTargetSelectionMode": { "base": null, "refs": { @@ -648,6 +688,16 @@ "refs": { } }, + "GetTargetResourceTypeRequest": { + "base": null, + "refs": { + } + }, + "GetTargetResourceTypeResponse": { + "base": null, + "refs": { + } + }, "LastUpdateTime": { "base": null, "refs": { @@ -713,6 +763,22 @@ "refs": { } }, + "ListTargetResourceTypesMaxResults": { + "base": null, + "refs": { + "ListTargetResourceTypesRequest$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.
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.
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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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.
The Amazon Web Services resource type. The resource type must be supported for the specified action.
", - "ExperimentTarget$resourceType": "The resource type.
", - "ExperimentTemplateTarget$resourceType": "The resource type.
", - "UpdateExperimentTemplateTargetInput$resourceType": "The Amazon Web Services resource type. The resource type must be supported for the specified action.
" - } - }, "RoleArn": { "base": null, "refs": { @@ -857,9 +916,71 @@ } }, "TargetResourceType": { + "base": "Describes a resource type.
", + "refs": { + "GetTargetResourceTypeResponse$targetResourceType": "Information about the resource type.
" + } + }, + "TargetResourceTypeDescription": { + "base": null, + "refs": { + "TargetResourceType$description": "A description of the resource type.
", + "TargetResourceTypeSummary$description": "A description of the resource type.
" + } + }, + "TargetResourceTypeId": { + "base": null, + "refs": { + "ActionTarget$resourceType": "The resource type of the target.
", + "CreateExperimentTemplateTargetInput$resourceType": "The resource type. The resource type must be supported for the specified action.
", + "ExperimentTarget$resourceType": "The resource type.
", + "ExperimentTemplateTarget$resourceType": "The resource type.
", + "GetTargetResourceTypeRequest$resourceType": "The resource type.
", + "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.
" + } + }, + "TargetResourceTypeParameter": { + "base": "Describes the parameters for a resource type. Use parameters to determine which tasks are identified during target resolution.
", + "refs": { + "TargetResourceTypeParameterMap$value": null + } + }, + "TargetResourceTypeParameterDescription": { + "base": null, + "refs": { + "TargetResourceTypeParameter$description": "A description of the parameter.
" + } + }, + "TargetResourceTypeParameterMap": { + "base": null, + "refs": { + "TargetResourceType$parameters": "The parameters for the resource type.
" + } + }, + "TargetResourceTypeParameterName": { + "base": null, + "refs": { + "TargetResourceTypeParameterMap$key": null + } + }, + "TargetResourceTypeParameterRequired": { + "base": null, + "refs": { + "TargetResourceTypeParameter$required": "Indicates whether the parameter is required.
" + } + }, + "TargetResourceTypeSummary": { + "base": "Describes a resource type.
", + "refs": { + "TargetResourceTypeSummaryList$member": null + } + }, + "TargetResourceTypeSummaryList": { "base": null, "refs": { - "ActionTarget$resourceType": "The resource type of the target.
" + "ListTargetResourceTypesResponse$targetResourceTypes": "The target resource types.
" } }, "UntagResourceRequest": { diff --git a/models/apis/fis/2020-12-01/paginators-1.json b/models/apis/fis/2020-12-01/paginators-1.json index 325359fe45e..905d0ae99bd 100644 --- a/models/apis/fis/2020-12-01/paginators-1.json +++ b/models/apis/fis/2020-12-01/paginators-1.json @@ -14,6 +14,11 @@ "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults" + }, + "ListTargetResourceTypes": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" } } } diff --git a/models/apis/glue/2017-03-31/api-2.json b/models/apis/glue/2017-03-31/api-2.json index a747984fa66..c7aff936f9c 100644 --- a/models/apis/glue/2017-03-31/api-2.json +++ b/models/apis/glue/2017-03-31/api-2.json @@ -433,6 +433,7 @@ {"shape":"AccessDeniedException"}, {"shape":"AlreadyExistsException"}, {"shape":"ResourceNumberLimitExceededException"}, + {"shape":"ConcurrentModificationException"}, {"shape":"InternalServiceException"} ] }, @@ -450,6 +451,7 @@ {"shape":"EntityNotFoundException"}, {"shape":"AlreadyExistsException"}, {"shape":"ResourceNumberLimitExceededException"}, + {"shape":"ConcurrentModificationException"}, {"shape":"InternalServiceException"} ] }, @@ -4302,7 +4304,8 @@ "type":"string", "enum":[ "AVRO", - "JSON" + "JSON", + "PROTOBUF" ] }, "DataLakePrincipal":{ diff --git a/models/apis/glue/2017-03-31/docs-2.json b/models/apis/glue/2017-03-31/docs-2.json index 4b2e7947ee7..bcdddfbab57 100644 --- a/models/apis/glue/2017-03-31/docs-2.json +++ b/models/apis/glue/2017-03-31/docs-2.json @@ -1500,12 +1500,12 @@ "DataFormat": { "base": null, "refs": { - "CheckSchemaVersionValidityInput$DataFormat": "The data format of the schema definition. Currently AVRO
and JSON
are supported.
The data format of the schema definition. Currently AVRO
and JSON
are supported.
The data format of the schema definition. Currently AVRO
and JSON
are supported.
The data format of the schema definition. Currently only AVRO
and JSON
are supported.
The data format of the schema definition. Currently AVRO
and JSON
are supported.
The data format of the schema definition. Currently AVRO
and JSON
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
The data format of the schema definition. Currently AVRO
, JSON
and PROTOBUF
are supported.
Creates a job that imports training data from your data source (an Amazon S3 bucket) to an Amazon Personalize dataset. To allow Amazon Personalize to import the training data, you must specify an IAM service role that has permission to read from the data source, as Amazon Personalize makes a copy of your data and processes it internally. For information on granting access to your Amazon S3 bucket, see Giving Amazon Personalize Access to Amazon S3 Resources.
The dataset import job replaces any existing data in the dataset that you imported in bulk.
Status
A dataset import job can be in one of the following states:
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
To get the status of the import job, call DescribeDatasetImportJob, providing the Amazon Resource Name (ARN) of the dataset import job. The dataset import is complete when the status shows as ACTIVE. If the status shows as CREATE FAILED, the response includes a failureReason
key, which describes why the job failed.
Importing takes time. You must wait until the status shows as ACTIVE before training a model using the dataset.
Related APIs
", "CreateEventTracker": "Creates an event tracker that you use when adding event data to a specified dataset group using the PutEvents API.
Only one event tracker can be associated with a dataset group. You will get an error if you call CreateEventTracker
using the same dataset group as an existing event tracker.
When you create an event tracker, the response includes a tracking ID, which you pass as a parameter when you use the PutEvents operation. Amazon Personalize then appends the event data to the Interactions dataset of the dataset group you specify in your event tracker.
The event tracker can be in one of the following states:
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
DELETE PENDING > DELETE IN_PROGRESS
To get the status of the event tracker, call DescribeEventTracker.
The event tracker must be in the ACTIVE state before using the tracking ID.
Related APIs
", "CreateFilter": "Creates a recommendation filter. For more information, see filter.
", - "CreateRecommender": "Creates a recommender with the recipe (a Domain dataset group use case) you specify. You create recommenders for a Domain dataset group and specify the recommender's Amazon Resource Name (ARN) when you make a GetRecommendations request.
Status
A recommender can be in one of the following states:
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
DELETE PENDING > DELETE IN_PROGRESS
To get the recommender status, call DescribeRecommender.
Wait until the status
of the recommender is ACTIVE
before asking the recommender for recommendations.
Related APIs
", + "CreateRecommender": "Creates a recommender with the recipe (a Domain dataset group use case) you specify. You create recommenders for a Domain dataset group and specify the recommender's Amazon Resource Name (ARN) when you make a GetRecommendations request.
Minimum recommendation requests per second
When you create a recommender, you can configure the recommender's minimum recommendation requests per second. The minimum recommendation requests per second (minRecommendationRequestsPerSecond
) specifies the baseline recommendation request throughput provisioned by Amazon Personalize. The default minRecommendationRequestsPerSecond is 1
. A recommendation request is a single GetRecommendations
operation. Request throughput is measured in requests per second and Amazon Personalize uses your requests per second to derive your requests per hour and the price of your recommender usage.
If your requests per second increases beyond minRecommendationRequestsPerSecond
, Amazon Personalize auto-scales the provisioned capacity up and down, but never below minRecommendationRequestsPerSecond
. There's a short time delay while the capacity is increased that might cause loss of requests.
Your bill is the greater of either the minimum requests per hour (based on minRecommendationRequestsPerSecond) or the actual number of requests. The actual request throughput used is calculated as the average requests/second within a one-hour window. We recommend starting with the default minRecommendationRequestsPerSecond
, track your usage using Amazon CloudWatch metrics, and then increase the minRecommendationRequestsPerSecond
as necessary.
Status
A recommender can be in one of the following states:
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
DELETE PENDING > DELETE IN_PROGRESS
To get the recommender status, call DescribeRecommender.
Wait until the status
of the recommender is ACTIVE
before asking the recommender for recommendations.
Related APIs
", "CreateSchema": "Creates an Amazon Personalize schema from the specified schema string. The schema you create must be in Avro JSON format.
Amazon Personalize recognizes three schema variants. Each schema is associated with a dataset type and has a set of required field and keywords. If you are creating a schema for a dataset in a Domain dataset group, you provide the domain of the Domain dataset group. You specify a schema when you call CreateDataset.
Related APIs
", "CreateSolution": "Creates the configuration for training a model. A trained model is known as a solution. After the configuration is created, you train the model (create a solution) by calling the CreateSolutionVersion operation. Every time you call CreateSolutionVersion
, a new version of the solution is created.
After creating a solution version, you check its accuracy by calling GetSolutionMetrics. When you are satisfied with the version, you deploy it using CreateCampaign. The campaign provides recommendations to a client through the GetRecommendations API.
To train a model, Amazon Personalize requires training data and a recipe. The training data comes from the dataset group that you provide in the request. A recipe specifies the training algorithm and a feature transformation. You can specify one of the predefined recipes provided by Amazon Personalize. Alternatively, you can specify performAutoML
and Amazon Personalize will analyze your data and select the optimum USER_PERSONALIZATION recipe for you.
Amazon Personalize doesn't support configuring the hpoObjective
for solution hyperparameter optimization at this time.
Status
A solution can be in one of the following states:
CREATE PENDING > CREATE IN_PROGRESS > ACTIVE -or- CREATE FAILED
DELETE PENDING > DELETE IN_PROGRESS
To get the status of the solution, call DescribeSolution. Wait until the status shows as ACTIVE before calling CreateSolutionVersion
.
Related APIs
", "CreateSolutionVersion": "Trains or retrains an active solution in a Custom dataset group. A solution is created using the CreateSolution operation and must be in the ACTIVE state before calling CreateSolutionVersion
. A new version of the solution is created every time you call this operation.
Status
A solution version can be in one of the following states:
CREATE PENDING
CREATE IN_PROGRESS
ACTIVE
CREATE FAILED
CREATE STOPPING
CREATE STOPPED
To get the status of the version, call DescribeSolutionVersion. Wait until the status shows as ACTIVE before calling CreateCampaign
.
If the status shows as CREATE FAILED, the response includes a failureReason
key, which describes why the job failed.
Related APIs
", @@ -1196,7 +1196,7 @@ "refs": { "CreateDatasetGroupRequest$kmsKeyArn": "The Amazon Resource Name (ARN) of a Key Management Service (KMS) key used to encrypt the datasets.
", "DatasetGroup$kmsKeyArn": "The Amazon Resource Name (ARN) of the Key Management Service (KMS) key used to encrypt the datasets.
", - "S3DataConfig$kmsKeyArn": "The Amazon Resource Name (ARN) of the Key Management Service (KMS) key that Amazon Personalize uses to encrypt or decrypt the input and output files of a batch inference job.
" + "S3DataConfig$kmsKeyArn": "The Amazon Resource Name (ARN) of the Key Management Service (KMS) key that Amazon Personalize uses to encrypt or decrypt the input and output files.
" } }, "LimitExceededException": { @@ -1581,7 +1581,7 @@ } }, "RecommenderUpdateSummary": { - "base": "Provides a summary of the properties of a recommender update. For a complete listing, call the DescribeRecommender API.
", + "base": "Provides a summary of the properties of a recommender update. For a complete listing, call the DescribeRecommender API operation.
", "refs": { "Recommender$latestRecommenderUpdate": "Provides a summary of the latest updates to the recommender.
" } @@ -1765,6 +1765,7 @@ "Campaign$minProvisionedTPS": "Specifies the requested minimum provisioned transactions (recommendations) per second.
", "CampaignUpdateSummary$minProvisionedTPS": "Specifies the requested minimum provisioned transactions (recommendations) per second that Amazon Personalize will support.
", "CreateCampaignRequest$minProvisionedTPS": "Specifies the requested minimum provisioned transactions (recommendations) per second that Amazon Personalize will support.
", + "RecommenderConfig$minRecommendationRequestsPerSecond": "Specifies the requested minimum provisioned recommendation requests per second that Amazon Personalize will support.
", "UpdateCampaignRequest$minProvisionedTPS": "Specifies the requested minimum provisioned transactions (recommendations) per second that Amazon Personalize will support.
" } }, diff --git a/service/appflow/api.go b/service/appflow/api.go index 6162b9daaa6..b8653f8505b 100644 --- a/service/appflow/api.go +++ b/service/appflow/api.go @@ -400,6 +400,95 @@ func (c *Appflow) DeleteFlowWithContext(ctx aws.Context, input *DeleteFlowInput, return out, req.Send() } +const opDescribeConnector = "DescribeConnector" + +// DescribeConnectorRequest generates a "aws/request.Request" representing the +// client's request for the DescribeConnector 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 DescribeConnector for more information on using the DescribeConnector +// 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 DescribeConnectorRequest method. +// req, resp := client.DescribeConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnector +func (c *Appflow) DescribeConnectorRequest(input *DescribeConnectorInput) (req *request.Request, output *DescribeConnectorOutput) { + op := &request.Operation{ + Name: opDescribeConnector, + HTTPMethod: "POST", + HTTPPath: "/describe-connector", + } + + if input == nil { + input = &DescribeConnectorInput{} + } + + output = &DescribeConnectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeConnector API operation for Amazon Appflow. +// +// Describes the given custom connector registered in your Amazon Web Services +// account. This API can be used for custom connectors that are registered in +// your account and also for Amazon authored connectors. +// +// 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 Appflow's +// API operation DescribeConnector for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The request has invalid or missing parameters. +// +// * InternalServerException +// An internal service error occurred during the processing of your request. +// Try again later. +// +// * ResourceNotFoundException +// The resource specified in the request (such as the source or destination +// connector profile) is not found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/DescribeConnector +func (c *Appflow) DescribeConnector(input *DescribeConnectorInput) (*DescribeConnectorOutput, error) { + req, out := c.DescribeConnectorRequest(input) + return out, req.Send() +} + +// DescribeConnectorWithContext is the same as DescribeConnector with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeConnector 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 *Appflow) DescribeConnectorWithContext(ctx aws.Context, input *DescribeConnectorInput, opts ...request.Option) (*DescribeConnectorOutput, error) { + req, out := c.DescribeConnectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeConnectorEntity = "DescribeConnectorEntity" // DescribeConnectorEntityRequest generates a "aws/request.Request" representing the @@ -675,7 +764,7 @@ func (c *Appflow) DescribeConnectorsRequest(input *DescribeConnectorsInput) (req Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, - LimitToken: "", + LimitToken: "maxResults", TruncationToken: "", }, } @@ -1111,6 +1200,149 @@ func (c *Appflow) ListConnectorEntitiesWithContext(ctx aws.Context, input *ListC return out, req.Send() } +const opListConnectors = "ListConnectors" + +// ListConnectorsRequest generates a "aws/request.Request" representing the +// client's request for the ListConnectors 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 ListConnectors for more information on using the ListConnectors +// 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 ListConnectorsRequest method. +// req, resp := client.ListConnectorsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectors +func (c *Appflow) ListConnectorsRequest(input *ListConnectorsInput) (req *request.Request, output *ListConnectorsOutput) { + op := &request.Operation{ + Name: opListConnectors, + HTTPMethod: "POST", + HTTPPath: "/list-connectors", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListConnectorsInput{} + } + + output = &ListConnectorsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListConnectors API operation for Amazon Appflow. +// +// Returns the list of all registered custom connectors in your Amazon Web Services +// account. This API lists only custom connectors registered in this account, +// not the Amazon Web Services authored connectors. +// +// 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 Appflow's +// API operation ListConnectors for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The request has invalid or missing parameters. +// +// * InternalServerException +// An internal service error occurred during the processing of your request. +// Try again later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/ListConnectors +func (c *Appflow) ListConnectors(input *ListConnectorsInput) (*ListConnectorsOutput, error) { + req, out := c.ListConnectorsRequest(input) + return out, req.Send() +} + +// ListConnectorsWithContext is the same as ListConnectors with the addition of +// the ability to pass a context and additional request options. +// +// See ListConnectors 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 *Appflow) ListConnectorsWithContext(ctx aws.Context, input *ListConnectorsInput, opts ...request.Option) (*ListConnectorsOutput, error) { + req, out := c.ListConnectorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListConnectorsPages iterates over the pages of a ListConnectors operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListConnectors 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 ListConnectors operation. +// pageNum := 0 +// err := client.ListConnectorsPages(params, +// func(page *appflow.ListConnectorsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Appflow) ListConnectorsPages(input *ListConnectorsInput, fn func(*ListConnectorsOutput, bool) bool) error { + return c.ListConnectorsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListConnectorsPagesWithContext same as ListConnectorsPages 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 *Appflow) ListConnectorsPagesWithContext(ctx aws.Context, input *ListConnectorsInput, fn func(*ListConnectorsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListConnectorsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListConnectorsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListConnectorsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListFlows = "ListFlows" // ListFlowsRequest generates a "aws/request.Request" representing the @@ -1339,6 +1571,116 @@ func (c *Appflow) ListTagsForResourceWithContext(ctx aws.Context, input *ListTag return out, req.Send() } +const opRegisterConnector = "RegisterConnector" + +// RegisterConnectorRequest generates a "aws/request.Request" representing the +// client's request for the RegisterConnector 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 RegisterConnector for more information on using the RegisterConnector +// 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 RegisterConnectorRequest method. +// req, resp := client.RegisterConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/RegisterConnector +func (c *Appflow) RegisterConnectorRequest(input *RegisterConnectorInput) (req *request.Request, output *RegisterConnectorOutput) { + op := &request.Operation{ + Name: opRegisterConnector, + HTTPMethod: "POST", + HTTPPath: "/register-connector", + } + + if input == nil { + input = &RegisterConnectorInput{} + } + + output = &RegisterConnectorOutput{} + req = c.newRequest(op, input, output) + return +} + +// RegisterConnector API operation for Amazon Appflow. +// +// Registers a new connector with your Amazon Web Services account. Before you +// can register the connector, you must deploy lambda in your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Appflow's +// API operation RegisterConnector for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The request has invalid or missing parameters. +// +// * ConflictException +// There was a conflict when processing the request (for example, a flow with +// the given name already exists within the account. Check for conflicting resource +// names and try again. +// +// * AccessDeniedException +// AppFlow/Requester has invalid or missing permissions. +// +// * ResourceNotFoundException +// The resource specified in the request (such as the source or destination +// connector profile) is not found. +// +// * ServiceQuotaExceededException +// The request would cause a service quota (such as the number of flows) to +// be exceeded. +// +// * ThrottlingException +// API calls have exceeded the maximum allowed API request rate per account +// and per Region. +// +// * InternalServerException +// An internal service error occurred during the processing of your request. +// Try again later. +// +// * ConnectorServerException +// An error occurred when retrieving data from the connector endpoint. +// +// * ConnectorAuthenticationException +// An error occurred when authenticating with the connector endpoint. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/RegisterConnector +func (c *Appflow) RegisterConnector(input *RegisterConnectorInput) (*RegisterConnectorOutput, error) { + req, out := c.RegisterConnectorRequest(input) + return out, req.Send() +} + +// RegisterConnectorWithContext is the same as RegisterConnector with the addition of +// the ability to pass a context and additional request options. +// +// See RegisterConnector 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 *Appflow) RegisterConnectorWithContext(ctx aws.Context, input *RegisterConnectorInput, opts ...request.Option) (*RegisterConnectorOutput, error) { + req, out := c.RegisterConnectorRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartFlow = "StartFlow" // StartFlowRequest generates a "aws/request.Request" representing the @@ -1616,7 +1958,98 @@ func (c *Appflow) TagResourceWithContext(ctx aws.Context, input *TagResourceInpu return out, req.Send() } -const opUntagResource = "UntagResource" +const opUnregisterConnector = "UnregisterConnector" + +// UnregisterConnectorRequest generates a "aws/request.Request" representing the +// client's request for the UnregisterConnector 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 UnregisterConnector for more information on using the UnregisterConnector +// 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 UnregisterConnectorRequest method. +// req, resp := client.UnregisterConnectorRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/UnregisterConnector +func (c *Appflow) UnregisterConnectorRequest(input *UnregisterConnectorInput) (req *request.Request, output *UnregisterConnectorOutput) { + op := &request.Operation{ + Name: opUnregisterConnector, + HTTPMethod: "POST", + HTTPPath: "/unregister-connector", + } + + if input == nil { + input = &UnregisterConnectorInput{} + } + + output = &UnregisterConnectorOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UnregisterConnector API operation for Amazon Appflow. +// +// Unregisters the custom connector registered in your account that matches +// the connectorLabel provided in the request. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Appflow's +// API operation UnregisterConnector for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The resource specified in the request (such as the source or destination +// connector profile) is not found. +// +// * ConflictException +// There was a conflict when processing the request (for example, a flow with +// the given name already exists within the account. Check for conflicting resource +// names and try again. +// +// * InternalServerException +// An internal service error occurred during the processing of your request. +// Try again later. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/appflow-2020-08-23/UnregisterConnector +func (c *Appflow) UnregisterConnector(input *UnregisterConnectorInput) (*UnregisterConnectorOutput, error) { + req, out := c.UnregisterConnectorRequest(input) + return out, req.Send() +} + +// UnregisterConnectorWithContext is the same as UnregisterConnector with the addition of +// the ability to pass a context and additional request options. +// +// See UnregisterConnector 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 *Appflow) UnregisterConnectorWithContext(ctx aws.Context, input *UnregisterConnectorInput, opts ...request.Option) (*UnregisterConnectorOutput, error) { + req, out := c.UnregisterConnectorRequest(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 @@ -1901,6 +2334,70 @@ func (c *Appflow) UpdateFlowWithContext(ctx aws.Context, input *UpdateFlowInput, return out, req.Send() } +// AppFlow/Requester has invalid or missing permissions. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + // The aggregation settings that you can use to customize the output format // of your flow data. type AggregationConfig struct { @@ -1942,8 +2439,12 @@ type AmplitudeConnectorProfileCredentials struct { // A unique alphanumeric identifier used to authenticate a user, developer, // or calling program to your API. // + // ApiKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by AmplitudeConnectorProfileCredentials's + // String and GoString methods. + // // ApiKey is a required field - ApiKey *string `locationName:"apiKey" type:"string" required:"true"` + ApiKey *string `locationName:"apiKey" type:"string" required:"true" sensitive:"true"` // The Secret Access Key portion of the credentials. // @@ -2094,23 +2595,25 @@ func (s *AmplitudeSourceProperties) SetObject(v string) *AmplitudeSourceProperti return s } -// The basic auth credentials required for basic authentication. -type BasicAuthCredentials struct { +// The API key credentials required for API key authentication. +type ApiKeyCredentials struct { _ struct{} `type:"structure"` - // The password to use to connect to a resource. + // The API key required for API key authentication. // - // Password is a sensitive parameter and its value will be - // replaced with "sensitive" in string returned by BasicAuthCredentials's + // ApiKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ApiKeyCredentials's // String and GoString methods. // - // Password is a required field - Password *string `locationName:"password" type:"string" required:"true" sensitive:"true"` + // ApiKey is a required field + ApiKey *string `locationName:"apiKey" type:"string" required:"true" sensitive:"true"` - // The username to use to connect to a resource. + // The API secret key required for API key authentication. // - // Username is a required field - Username *string `locationName:"username" type:"string" required:"true"` + // ApiSecretKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ApiKeyCredentials's + // String and GoString methods. + ApiSecretKey *string `locationName:"apiSecretKey" type:"string" sensitive:"true"` } // String returns the string representation. @@ -2118,7 +2621,7 @@ type BasicAuthCredentials 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 BasicAuthCredentials) String() string { +func (s ApiKeyCredentials) String() string { return awsutil.Prettify(s) } @@ -2127,18 +2630,15 @@ func (s BasicAuthCredentials) 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 BasicAuthCredentials) GoString() string { +func (s ApiKeyCredentials) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *BasicAuthCredentials) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "BasicAuthCredentials"} - if s.Password == nil { - invalidParams.Add(request.NewErrParamRequired("Password")) - } - if s.Username == nil { - invalidParams.Add(request.NewErrParamRequired("Username")) +func (s *ApiKeyCredentials) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ApiKeyCredentials"} + if s.ApiKey == nil { + invalidParams.Add(request.NewErrParamRequired("ApiKey")) } if invalidParams.Len() > 0 { @@ -2147,26 +2647,40 @@ func (s *BasicAuthCredentials) Validate() error { return nil } -// SetPassword sets the Password field's value. -func (s *BasicAuthCredentials) SetPassword(v string) *BasicAuthCredentials { - s.Password = &v +// SetApiKey sets the ApiKey field's value. +func (s *ApiKeyCredentials) SetApiKey(v string) *ApiKeyCredentials { + s.ApiKey = &v return s } -// SetUsername sets the Username field's value. -func (s *BasicAuthCredentials) SetUsername(v string) *BasicAuthCredentials { - s.Username = &v +// SetApiSecretKey sets the ApiSecretKey field's value. +func (s *ApiKeyCredentials) SetApiSecretKey(v string) *ApiKeyCredentials { + s.ApiSecretKey = &v return s } -// There was a conflict when processing the request (for example, a flow with -// the given name already exists within the account. Check for conflicting resource -// names and try again. -type ConflictException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Information about required authentication parameters. +type AuthParameter struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"message" type:"string"` + // Contains default values for this authentication parameter that are supplied + // by the connector. + ConnectorSuppliedValues []*string `locationName:"connectorSuppliedValues" type:"list"` + + // A description about the authentication parameter. + Description *string `locationName:"description" type:"string"` + + // Indicates whether this authentication parameter is required. + IsRequired *bool `locationName:"isRequired" type:"boolean"` + + // Indicates whether this authentication parameter is a sensitive field. + IsSensitiveField *bool `locationName:"isSensitiveField" type:"boolean"` + + // The authentication key required to authenticate with the connector. + Key *string `locationName:"key" type:"string"` + + // Label used for authentication parameter. + Label *string `locationName:"label" type:"string"` } // String returns the string representation. @@ -2174,7 +2688,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 AuthParameter) String() string { return awsutil.Prettify(s) } @@ -2183,54 +2697,67 @@ 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 AuthParameter) GoString() string { return s.String() } -func newErrorConflictException(v protocol.ResponseMetadata) error { - return &ConflictException{ - RespMetadata: v, - } +// SetConnectorSuppliedValues sets the ConnectorSuppliedValues field's value. +func (s *AuthParameter) SetConnectorSuppliedValues(v []*string) *AuthParameter { + s.ConnectorSuppliedValues = v + return s } -// Code returns the exception type name. -func (s *ConflictException) Code() string { - return "ConflictException" +// SetDescription sets the Description field's value. +func (s *AuthParameter) SetDescription(v string) *AuthParameter { + s.Description = &v + return s } -// Message returns the exception's message. -func (s *ConflictException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetIsRequired sets the IsRequired field's value. +func (s *AuthParameter) SetIsRequired(v bool) *AuthParameter { + s.IsRequired = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConflictException) OrigErr() error { - return nil +// SetIsSensitiveField sets the IsSensitiveField field's value. +func (s *AuthParameter) SetIsSensitiveField(v bool) *AuthParameter { + s.IsSensitiveField = &v + return s } -func (s *ConflictException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetKey sets the Key field's value. +func (s *AuthParameter) SetKey(v string) *AuthParameter { + s.Key = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ConflictException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetLabel sets the Label field's value. +func (s *AuthParameter) SetLabel(v string) *AuthParameter { + s.Label = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ConflictException) RequestID() string { - return s.RespMetadata.RequestID -} +// Contains information about the authentication config that the connector supports. +type AuthenticationConfig struct { + _ struct{} `type:"structure"` -// An error occurred when authenticating with the connector endpoint. -type ConnectorAuthenticationException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Contains information required for custom authentication. + CustomAuthConfigs []*CustomAuthConfig `locationName:"customAuthConfigs" type:"list"` - Message_ *string `locationName:"message" type:"string"` + // Indicates whether API key authentication is supported by the connector + IsApiKeyAuthSupported *bool `locationName:"isApiKeyAuthSupported" type:"boolean"` + + // Indicates whether basic authentication is supported by the connector. + IsBasicAuthSupported *bool `locationName:"isBasicAuthSupported" type:"boolean"` + + // Indicates whether custom authentication is supported by the connector + IsCustomAuthSupported *bool `locationName:"isCustomAuthSupported" type:"boolean"` + + // Indicates whether OAuth 2.0 authentication is supported by the connector. + IsOAuth2Supported *bool `locationName:"isOAuth2Supported" type:"boolean"` + + // Contains the default values required for OAuth 2.0 authentication. + OAuth2Defaults *OAuth2Defaults `locationName:"oAuth2Defaults" type:"structure"` } // String returns the string representation. @@ -2238,7 +2765,7 @@ type ConnectorAuthenticationException 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 ConnectorAuthenticationException) String() string { +func (s AuthenticationConfig) String() string { return awsutil.Prettify(s) } @@ -2247,76 +2774,323 @@ func (s ConnectorAuthenticationException) 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 ConnectorAuthenticationException) GoString() string { +func (s AuthenticationConfig) GoString() string { return s.String() } -func newErrorConnectorAuthenticationException(v protocol.ResponseMetadata) error { - return &ConnectorAuthenticationException{ - RespMetadata: v, - } +// SetCustomAuthConfigs sets the CustomAuthConfigs field's value. +func (s *AuthenticationConfig) SetCustomAuthConfigs(v []*CustomAuthConfig) *AuthenticationConfig { + s.CustomAuthConfigs = v + return s } -// Code returns the exception type name. -func (s *ConnectorAuthenticationException) Code() string { - return "ConnectorAuthenticationException" +// SetIsApiKeyAuthSupported sets the IsApiKeyAuthSupported field's value. +func (s *AuthenticationConfig) SetIsApiKeyAuthSupported(v bool) *AuthenticationConfig { + s.IsApiKeyAuthSupported = &v + return s } -// Message returns the exception's message. -func (s *ConnectorAuthenticationException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetIsBasicAuthSupported sets the IsBasicAuthSupported field's value. +func (s *AuthenticationConfig) SetIsBasicAuthSupported(v bool) *AuthenticationConfig { + s.IsBasicAuthSupported = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConnectorAuthenticationException) OrigErr() error { - return nil +// SetIsCustomAuthSupported sets the IsCustomAuthSupported field's value. +func (s *AuthenticationConfig) SetIsCustomAuthSupported(v bool) *AuthenticationConfig { + s.IsCustomAuthSupported = &v + return s } -func (s *ConnectorAuthenticationException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetIsOAuth2Supported sets the IsOAuth2Supported field's value. +func (s *AuthenticationConfig) SetIsOAuth2Supported(v bool) *AuthenticationConfig { + s.IsOAuth2Supported = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *ConnectorAuthenticationException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetOAuth2Defaults sets the OAuth2Defaults field's value. +func (s *AuthenticationConfig) SetOAuth2Defaults(v *OAuth2Defaults) *AuthenticationConfig { + s.OAuth2Defaults = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ConnectorAuthenticationException) RequestID() string { - return s.RespMetadata.RequestID -} +// The basic auth credentials required for basic authentication. +type BasicAuthCredentials struct { + _ struct{} `type:"structure"` -// The configuration settings related to a given connector. + // The password to use to connect to a resource. + // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by BasicAuthCredentials's + // String and GoString methods. + // + // Password is a required field + Password *string `locationName:"password" type:"string" required:"true" sensitive:"true"` + + // The username to use to connect to a resource. + // + // Username is a required field + Username *string `locationName:"username" 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 BasicAuthCredentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BasicAuthCredentials) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BasicAuthCredentials) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BasicAuthCredentials"} + if s.Password == nil { + invalidParams.Add(request.NewErrParamRequired("Password")) + } + if s.Username == nil { + invalidParams.Add(request.NewErrParamRequired("Username")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPassword sets the Password field's value. +func (s *BasicAuthCredentials) SetPassword(v string) *BasicAuthCredentials { + s.Password = &v + return s +} + +// SetUsername sets the Username field's value. +func (s *BasicAuthCredentials) SetUsername(v string) *BasicAuthCredentials { + s.Username = &v + return s +} + +// There was a conflict when processing the request (for example, a flow with +// the given name already exists within the account. Check for conflicting resource +// names and try again. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// An error occurred when authenticating with the connector endpoint. +type ConnectorAuthenticationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorAuthenticationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorAuthenticationException) GoString() string { + return s.String() +} + +func newErrorConnectorAuthenticationException(v protocol.ResponseMetadata) error { + return &ConnectorAuthenticationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConnectorAuthenticationException) Code() string { + return "ConnectorAuthenticationException" +} + +// Message returns the exception's message. +func (s *ConnectorAuthenticationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConnectorAuthenticationException) OrigErr() error { + return nil +} + +func (s *ConnectorAuthenticationException) 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 *ConnectorAuthenticationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConnectorAuthenticationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The configuration settings related to a given connector. type ConnectorConfiguration struct { _ struct{} `type:"structure"` + // The authentication config required for the connector. + AuthenticationConfig *AuthenticationConfig `locationName:"authenticationConfig" type:"structure"` + // Specifies whether the connector can be used as a destination. CanUseAsDestination *bool `locationName:"canUseAsDestination" type:"boolean"` // Specifies whether the connector can be used as a source. CanUseAsSource *bool `locationName:"canUseAsSource" type:"boolean"` + // The Amazon Resource Name (ARN) for the registered connector. + ConnectorArn *string `locationName:"connectorArn" type:"string"` + + // A description about the connector. + ConnectorDescription *string `locationName:"connectorDescription" type:"string"` + + // The label used for registering the connector. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + // Specifies connector-specific metadata such as oAuthScopes, supportedRegions, // privateLinkServiceUrl, and so on. ConnectorMetadata *ConnectorMetadata `locationName:"connectorMetadata" type:"structure"` + // The connection modes that the connector supports. + ConnectorModes []*string `locationName:"connectorModes" type:"list"` + + // The connector name. + ConnectorName *string `locationName:"connectorName" type:"string"` + + // The owner who developed the connector. + ConnectorOwner *string `locationName:"connectorOwner" type:"string"` + + // The configuration required for registering the connector. + ConnectorProvisioningConfig *ConnectorProvisioningConfig `locationName:"connectorProvisioningConfig" type:"structure"` + + // The provisioning type used to register the connector. + ConnectorProvisioningType *string `locationName:"connectorProvisioningType" type:"string" enum:"ConnectorProvisioningType"` + + // The required connector runtime settings. + ConnectorRuntimeSettings []*ConnectorRuntimeSetting `locationName:"connectorRuntimeSettings" type:"list"` + + // The connector type. + ConnectorType *string `locationName:"connectorType" type:"string" enum:"ConnectorType"` + + // The connector version. + ConnectorVersion *string `locationName:"connectorVersion" type:"string"` + // Specifies if PrivateLink is enabled for that connector. IsPrivateLinkEnabled *bool `locationName:"isPrivateLinkEnabled" type:"boolean"` // Specifies if a PrivateLink endpoint URL is required. IsPrivateLinkEndpointUrlRequired *bool `locationName:"isPrivateLinkEndpointUrlRequired" type:"boolean"` + // Logo URL of the connector. + LogoURL *string `locationName:"logoURL" type:"string"` + + // The date on which the connector was registered. + RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp"` + + // Information about who registered the connector. + RegisteredBy *string `locationName:"registeredBy" type:"string"` + + // A list of API versions that are supported by the connector. + SupportedApiVersions []*string `locationName:"supportedApiVersions" type:"list"` + // Lists the connectors that are available for use as destinations. SupportedDestinationConnectors []*string `locationName:"supportedDestinationConnectors" type:"list"` + // A list of operators supported by the connector. + SupportedOperators []*string `locationName:"supportedOperators" type:"list"` + // Specifies the supported flow frequency for that connector. SupportedSchedulingFrequencies []*string `locationName:"supportedSchedulingFrequencies" type:"list"` // Specifies the supported trigger types for the flow. SupportedTriggerTypes []*string `locationName:"supportedTriggerTypes" type:"list"` + + // A list of write operations supported by the connector. + SupportedWriteOperations []*string `locationName:"supportedWriteOperations" type:"list"` } // String returns the string representation. @@ -2337,6 +3111,12 @@ func (s ConnectorConfiguration) GoString() string { return s.String() } +// SetAuthenticationConfig sets the AuthenticationConfig field's value. +func (s *ConnectorConfiguration) SetAuthenticationConfig(v *AuthenticationConfig) *ConnectorConfiguration { + s.AuthenticationConfig = v + return s +} + // SetCanUseAsDestination sets the CanUseAsDestination field's value. func (s *ConnectorConfiguration) SetCanUseAsDestination(v bool) *ConnectorConfiguration { s.CanUseAsDestination = &v @@ -2349,12 +3129,78 @@ func (s *ConnectorConfiguration) SetCanUseAsSource(v bool) *ConnectorConfigurati return s } +// SetConnectorArn sets the ConnectorArn field's value. +func (s *ConnectorConfiguration) SetConnectorArn(v string) *ConnectorConfiguration { + s.ConnectorArn = &v + return s +} + +// SetConnectorDescription sets the ConnectorDescription field's value. +func (s *ConnectorConfiguration) SetConnectorDescription(v string) *ConnectorConfiguration { + s.ConnectorDescription = &v + return s +} + +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *ConnectorConfiguration) SetConnectorLabel(v string) *ConnectorConfiguration { + s.ConnectorLabel = &v + return s +} + // SetConnectorMetadata sets the ConnectorMetadata field's value. func (s *ConnectorConfiguration) SetConnectorMetadata(v *ConnectorMetadata) *ConnectorConfiguration { s.ConnectorMetadata = v return s } +// SetConnectorModes sets the ConnectorModes field's value. +func (s *ConnectorConfiguration) SetConnectorModes(v []*string) *ConnectorConfiguration { + s.ConnectorModes = v + return s +} + +// SetConnectorName sets the ConnectorName field's value. +func (s *ConnectorConfiguration) SetConnectorName(v string) *ConnectorConfiguration { + s.ConnectorName = &v + return s +} + +// SetConnectorOwner sets the ConnectorOwner field's value. +func (s *ConnectorConfiguration) SetConnectorOwner(v string) *ConnectorConfiguration { + s.ConnectorOwner = &v + return s +} + +// SetConnectorProvisioningConfig sets the ConnectorProvisioningConfig field's value. +func (s *ConnectorConfiguration) SetConnectorProvisioningConfig(v *ConnectorProvisioningConfig) *ConnectorConfiguration { + s.ConnectorProvisioningConfig = v + return s +} + +// SetConnectorProvisioningType sets the ConnectorProvisioningType field's value. +func (s *ConnectorConfiguration) SetConnectorProvisioningType(v string) *ConnectorConfiguration { + s.ConnectorProvisioningType = &v + return s +} + +// SetConnectorRuntimeSettings sets the ConnectorRuntimeSettings field's value. +func (s *ConnectorConfiguration) SetConnectorRuntimeSettings(v []*ConnectorRuntimeSetting) *ConnectorConfiguration { + s.ConnectorRuntimeSettings = v + return s +} + +// SetConnectorType sets the ConnectorType field's value. +func (s *ConnectorConfiguration) SetConnectorType(v string) *ConnectorConfiguration { + s.ConnectorType = &v + return s +} + +// SetConnectorVersion sets the ConnectorVersion field's value. +func (s *ConnectorConfiguration) SetConnectorVersion(v string) *ConnectorConfiguration { + s.ConnectorVersion = &v + return s +} + // SetIsPrivateLinkEnabled sets the IsPrivateLinkEnabled field's value. func (s *ConnectorConfiguration) SetIsPrivateLinkEnabled(v bool) *ConnectorConfiguration { s.IsPrivateLinkEnabled = &v @@ -2367,12 +3213,42 @@ func (s *ConnectorConfiguration) SetIsPrivateLinkEndpointUrlRequired(v bool) *Co return s } +// SetLogoURL sets the LogoURL field's value. +func (s *ConnectorConfiguration) SetLogoURL(v string) *ConnectorConfiguration { + s.LogoURL = &v + return s +} + +// SetRegisteredAt sets the RegisteredAt field's value. +func (s *ConnectorConfiguration) SetRegisteredAt(v time.Time) *ConnectorConfiguration { + s.RegisteredAt = &v + return s +} + +// SetRegisteredBy sets the RegisteredBy field's value. +func (s *ConnectorConfiguration) SetRegisteredBy(v string) *ConnectorConfiguration { + s.RegisteredBy = &v + return s +} + +// SetSupportedApiVersions sets the SupportedApiVersions field's value. +func (s *ConnectorConfiguration) SetSupportedApiVersions(v []*string) *ConnectorConfiguration { + s.SupportedApiVersions = v + return s +} + // SetSupportedDestinationConnectors sets the SupportedDestinationConnectors field's value. func (s *ConnectorConfiguration) SetSupportedDestinationConnectors(v []*string) *ConnectorConfiguration { s.SupportedDestinationConnectors = v return s } +// SetSupportedOperators sets the SupportedOperators field's value. +func (s *ConnectorConfiguration) SetSupportedOperators(v []*string) *ConnectorConfiguration { + s.SupportedOperators = v + return s +} + // SetSupportedSchedulingFrequencies sets the SupportedSchedulingFrequencies field's value. func (s *ConnectorConfiguration) SetSupportedSchedulingFrequencies(v []*string) *ConnectorConfiguration { s.SupportedSchedulingFrequencies = v @@ -2385,6 +3261,134 @@ func (s *ConnectorConfiguration) SetSupportedTriggerTypes(v []*string) *Connecto return s } +// SetSupportedWriteOperations sets the SupportedWriteOperations field's value. +func (s *ConnectorConfiguration) SetSupportedWriteOperations(v []*string) *ConnectorConfiguration { + s.SupportedWriteOperations = v + return s +} + +// Information about the registered connector. +type ConnectorDetail struct { + _ struct{} `type:"structure"` + + // The application type of the connector. + ApplicationType *string `locationName:"applicationType" type:"string"` + + // A description about the registered connector. + ConnectorDescription *string `locationName:"connectorDescription" type:"string"` + + // A label used for the connector. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + + // The connection mode that the connector supports. + ConnectorModes []*string `locationName:"connectorModes" type:"list"` + + // The name of the connector. + ConnectorName *string `locationName:"connectorName" type:"string"` + + // The owner of the connector. + ConnectorOwner *string `locationName:"connectorOwner" type:"string"` + + // The provisioning type that the connector uses. + ConnectorProvisioningType *string `locationName:"connectorProvisioningType" type:"string" enum:"ConnectorProvisioningType"` + + // The connector type. + ConnectorType *string `locationName:"connectorType" type:"string" enum:"ConnectorType"` + + // The connector version. + ConnectorVersion *string `locationName:"connectorVersion" type:"string"` + + // The time at which the connector was registered. + RegisteredAt *time.Time `locationName:"registeredAt" type:"timestamp"` + + // The user who registered the connector. + RegisteredBy *string `locationName:"registeredBy" 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 ConnectorDetail) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorDetail) GoString() string { + return s.String() +} + +// SetApplicationType sets the ApplicationType field's value. +func (s *ConnectorDetail) SetApplicationType(v string) *ConnectorDetail { + s.ApplicationType = &v + return s +} + +// SetConnectorDescription sets the ConnectorDescription field's value. +func (s *ConnectorDetail) SetConnectorDescription(v string) *ConnectorDetail { + s.ConnectorDescription = &v + return s +} + +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *ConnectorDetail) SetConnectorLabel(v string) *ConnectorDetail { + s.ConnectorLabel = &v + return s +} + +// SetConnectorModes sets the ConnectorModes field's value. +func (s *ConnectorDetail) SetConnectorModes(v []*string) *ConnectorDetail { + s.ConnectorModes = v + return s +} + +// SetConnectorName sets the ConnectorName field's value. +func (s *ConnectorDetail) SetConnectorName(v string) *ConnectorDetail { + s.ConnectorName = &v + return s +} + +// SetConnectorOwner sets the ConnectorOwner field's value. +func (s *ConnectorDetail) SetConnectorOwner(v string) *ConnectorDetail { + s.ConnectorOwner = &v + return s +} + +// SetConnectorProvisioningType sets the ConnectorProvisioningType field's value. +func (s *ConnectorDetail) SetConnectorProvisioningType(v string) *ConnectorDetail { + s.ConnectorProvisioningType = &v + return s +} + +// SetConnectorType sets the ConnectorType field's value. +func (s *ConnectorDetail) SetConnectorType(v string) *ConnectorDetail { + s.ConnectorType = &v + return s +} + +// SetConnectorVersion sets the ConnectorVersion field's value. +func (s *ConnectorDetail) SetConnectorVersion(v string) *ConnectorDetail { + s.ConnectorVersion = &v + return s +} + +// SetRegisteredAt sets the RegisteredAt field's value. +func (s *ConnectorDetail) SetRegisteredAt(v time.Time) *ConnectorDetail { + s.RegisteredAt = &v + return s +} + +// SetRegisteredBy sets the RegisteredBy field's value. +func (s *ConnectorDetail) SetRegisteredBy(v string) *ConnectorDetail { + s.RegisteredBy = &v + return s +} + // The high-level entity that can be queried in Amazon AppFlow. For example, // a Salesforce entity might be an Account or Opportunity, whereas a ServiceNow // entity might be an Incident. @@ -2448,6 +3452,12 @@ func (s *ConnectorEntity) SetName(v string) *ConnectorEntity { type ConnectorEntityField struct { _ struct{} `type:"structure"` + // A map that has specific properties related to the ConnectorEntityField. + CustomProperties map[string]*string `locationName:"customProperties" type:"map"` + + // Default value that can be assigned to this field. + DefaultValue *string `locationName:"defaultValue" type:"string"` + // A description of the connector entity field. Description *string `locationName:"description" type:"string"` @@ -2459,9 +3469,19 @@ type ConnectorEntityField struct { // Identifier is a required field Identifier *string `locationName:"identifier" type:"string" required:"true"` + // Booelan value that indicates whether this field is deprecated or not. + IsDeprecated *bool `locationName:"isDeprecated" type:"boolean"` + + // Booelan value that indicates whether this field can be used as a primary + // key. + IsPrimaryKey *bool `locationName:"isPrimaryKey" type:"boolean"` + // The label applied to a connector entity field. Label *string `locationName:"label" type:"string"` + // The parent identifier of the connector field. + ParentIdentifier *string `locationName:"parentIdentifier" type:"string"` + // The properties that can be applied to a field when the connector is being // used as a source. SourceProperties *SourceFieldProperties `locationName:"sourceProperties" type:"structure"` @@ -2489,6 +3509,18 @@ func (s ConnectorEntityField) GoString() string { return s.String() } +// SetCustomProperties sets the CustomProperties field's value. +func (s *ConnectorEntityField) SetCustomProperties(v map[string]*string) *ConnectorEntityField { + s.CustomProperties = v + return s +} + +// SetDefaultValue sets the DefaultValue field's value. +func (s *ConnectorEntityField) SetDefaultValue(v string) *ConnectorEntityField { + s.DefaultValue = &v + return s +} + // SetDescription sets the Description field's value. func (s *ConnectorEntityField) SetDescription(v string) *ConnectorEntityField { s.Description = &v @@ -2507,12 +3539,30 @@ func (s *ConnectorEntityField) SetIdentifier(v string) *ConnectorEntityField { return s } +// SetIsDeprecated sets the IsDeprecated field's value. +func (s *ConnectorEntityField) SetIsDeprecated(v bool) *ConnectorEntityField { + s.IsDeprecated = &v + return s +} + +// SetIsPrimaryKey sets the IsPrimaryKey field's value. +func (s *ConnectorEntityField) SetIsPrimaryKey(v bool) *ConnectorEntityField { + s.IsPrimaryKey = &v + return s +} + // SetLabel sets the Label field's value. func (s *ConnectorEntityField) SetLabel(v string) *ConnectorEntityField { s.Label = &v return s } +// SetParentIdentifier sets the ParentIdentifier field's value. +func (s *ConnectorEntityField) SetParentIdentifier(v string) *ConnectorEntityField { + s.ParentIdentifier = &v + return s +} + // SetSourceProperties sets the SourceProperties field's value. func (s *ConnectorEntityField) SetSourceProperties(v *SourceFieldProperties) *ConnectorEntityField { s.SourceProperties = v @@ -2789,6 +3839,9 @@ type ConnectorOperator struct { // The operation to be performed on the provided Amplitude source fields. Amplitude *string `type:"string" enum:"AmplitudeConnectorOperator"` + // Operators supported by the custom connector. + CustomConnector *string `type:"string" enum:"Operator"` + // The operation to be performed on the provided Datadog source fields. Datadog *string `type:"string" enum:"DatadogConnectorOperator"` @@ -2856,6 +3909,12 @@ func (s *ConnectorOperator) SetAmplitude(v string) *ConnectorOperator { return s } +// SetCustomConnector sets the CustomConnector field's value. +func (s *ConnectorOperator) SetCustomConnector(v string) *ConnectorOperator { + s.CustomConnector = &v + return s +} + // SetDatadog sets the Datadog field's value. func (s *ConnectorOperator) SetDatadog(v string) *ConnectorOperator { s.Datadog = &v @@ -2951,6 +4010,9 @@ type ConnectorProfile struct { // Indicates the connection mode and if it is public or private. ConnectionMode *string `locationName:"connectionMode" type:"string" enum:"ConnectionMode"` + // The label for the connector profile being created. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + // The Amazon Resource Name (ARN) of the connector profile. ConnectorProfileArn *string `locationName:"connectorProfileArn" type:"string"` @@ -3001,6 +4063,12 @@ func (s *ConnectorProfile) SetConnectionMode(v string) *ConnectorProfile { return s } +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *ConnectorProfile) SetConnectorLabel(v string) *ConnectorProfile { + s.ConnectorLabel = &v + return s +} + // SetConnectorProfileArn sets the ConnectorProfileArn field's value. func (s *ConnectorProfile) SetConnectorProfileArn(v string) *ConnectorProfile { s.ConnectorProfileArn = &v @@ -3128,6 +4196,10 @@ type ConnectorProfileCredentials struct { // The connector-specific credentials required when using Amplitude. Amplitude *AmplitudeConnectorProfileCredentials `type:"structure"` + // The connector-specific profile credentials that are required when using the + // custom connector. + CustomConnector *CustomConnectorProfileCredentials `type:"structure"` + // The connector-specific credentials required when using Datadog. Datadog *DatadogConnectorProfileCredentials `type:"structure"` @@ -3203,6 +4275,11 @@ func (s *ConnectorProfileCredentials) Validate() error { invalidParams.AddNested("Amplitude", err.(request.ErrInvalidParams)) } } + if s.CustomConnector != nil { + if err := s.CustomConnector.Validate(); err != nil { + invalidParams.AddNested("CustomConnector", err.(request.ErrInvalidParams)) + } + } if s.Datadog != nil { if err := s.Datadog.Validate(); err != nil { invalidParams.AddNested("Datadog", err.(request.ErrInvalidParams)) @@ -3291,6 +4368,12 @@ func (s *ConnectorProfileCredentials) SetAmplitude(v *AmplitudeConnectorProfileC return s } +// SetCustomConnector sets the CustomConnector field's value. +func (s *ConnectorProfileCredentials) SetCustomConnector(v *CustomConnectorProfileCredentials) *ConnectorProfileCredentials { + s.CustomConnector = v + return s +} + // SetDatadog sets the Datadog field's value. func (s *ConnectorProfileCredentials) SetDatadog(v *DatadogConnectorProfileCredentials) *ConnectorProfileCredentials { s.Datadog = v @@ -3394,6 +4477,9 @@ type ConnectorProfileProperties struct { // The connector-specific properties required by Amplitude. Amplitude *AmplitudeConnectorProfileProperties `type:"structure"` + // The properties required by the custom connector. + CustomConnector *CustomConnectorProfileProperties `type:"structure"` + // The connector-specific properties required by Datadog. Datadog *DatadogConnectorProfileProperties `type:"structure"` @@ -3464,6 +4550,11 @@ func (s ConnectorProfileProperties) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ConnectorProfileProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ConnectorProfileProperties"} + if s.CustomConnector != nil { + if err := s.CustomConnector.Validate(); err != nil { + invalidParams.AddNested("CustomConnector", err.(request.ErrInvalidParams)) + } + } if s.Datadog != nil { if err := s.Datadog.Validate(); err != nil { invalidParams.AddNested("Datadog", err.(request.ErrInvalidParams)) @@ -3532,6 +4623,12 @@ func (s *ConnectorProfileProperties) SetAmplitude(v *AmplitudeConnectorProfilePr return s } +// SetCustomConnector sets the CustomConnector field's value. +func (s *ConnectorProfileProperties) SetCustomConnector(v *CustomConnectorProfileProperties) *ConnectorProfileProperties { + s.CustomConnector = v + return s +} + // SetDatadog sets the Datadog field's value. func (s *ConnectorProfileProperties) SetDatadog(v *DatadogConnectorProfileProperties) *ConnectorProfileProperties { s.Datadog = v @@ -3628,6 +4725,142 @@ func (s *ConnectorProfileProperties) SetZendesk(v *ZendeskConnectorProfileProper return s } +// Contains information about the configuration of the connector being registered. +type ConnectorProvisioningConfig struct { + _ struct{} `type:"structure"` + + // Contains information about the configuration of the lambda which is being + // registered as the connector. + Lambda *LambdaConnectorProvisioningConfig `locationName:"lambda" 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 ConnectorProvisioningConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorProvisioningConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConnectorProvisioningConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConnectorProvisioningConfig"} + if s.Lambda != nil { + if err := s.Lambda.Validate(); err != nil { + invalidParams.AddNested("Lambda", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLambda sets the Lambda field's value. +func (s *ConnectorProvisioningConfig) SetLambda(v *LambdaConnectorProvisioningConfig) *ConnectorProvisioningConfig { + s.Lambda = v + return s +} + +// Contains information about the connector runtime settings that are required +// for flow execution. +type ConnectorRuntimeSetting struct { + _ struct{} `type:"structure"` + + // Contains default values for the connector runtime setting that are supplied + // by the connector. + ConnectorSuppliedValueOptions []*string `locationName:"connectorSuppliedValueOptions" type:"list"` + + // Data type of the connector runtime setting. + DataType *string `locationName:"dataType" type:"string"` + + // A description about the connector runtime setting. + Description *string `locationName:"description" type:"string"` + + // Indicates whether this connector runtime setting is required. + IsRequired *bool `locationName:"isRequired" type:"boolean"` + + // Contains value information about the connector runtime setting. + Key *string `locationName:"key" type:"string"` + + // A label used for connector runtime setting. + Label *string `locationName:"label" type:"string"` + + // Indicates the scope of the connector runtime setting. + Scope *string `locationName:"scope" 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 ConnectorRuntimeSetting) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConnectorRuntimeSetting) GoString() string { + return s.String() +} + +// SetConnectorSuppliedValueOptions sets the ConnectorSuppliedValueOptions field's value. +func (s *ConnectorRuntimeSetting) SetConnectorSuppliedValueOptions(v []*string) *ConnectorRuntimeSetting { + s.ConnectorSuppliedValueOptions = v + return s +} + +// SetDataType sets the DataType field's value. +func (s *ConnectorRuntimeSetting) SetDataType(v string) *ConnectorRuntimeSetting { + s.DataType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *ConnectorRuntimeSetting) SetDescription(v string) *ConnectorRuntimeSetting { + s.Description = &v + return s +} + +// SetIsRequired sets the IsRequired field's value. +func (s *ConnectorRuntimeSetting) SetIsRequired(v bool) *ConnectorRuntimeSetting { + s.IsRequired = &v + return s +} + +// SetKey sets the Key field's value. +func (s *ConnectorRuntimeSetting) SetKey(v string) *ConnectorRuntimeSetting { + s.Key = &v + return s +} + +// SetLabel sets the Label field's value. +func (s *ConnectorRuntimeSetting) SetLabel(v string) *ConnectorRuntimeSetting { + s.Label = &v + return s +} + +// SetScope sets the Scope field's value. +func (s *ConnectorRuntimeSetting) SetScope(v string) *ConnectorRuntimeSetting { + s.Scope = &v + return s +} + // An error occurred when retrieving data from the connector endpoint. type ConnectorServerException struct { _ struct{} `type:"structure"` @@ -3702,6 +4935,11 @@ type CreateConnectorProfileInput struct { // ConnectionMode is a required field ConnectionMode *string `locationName:"connectionMode" type:"string" required:"true" enum:"ConnectionMode"` + // The label of the connector. The label is unique for each ConnectorRegistration + // in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR + // connector type/. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + // Defines the connector-specific configuration and credentials. // // ConnectorProfileConfig is a required field @@ -3779,6 +5017,12 @@ func (s *CreateConnectorProfileInput) SetConnectionMode(v string) *CreateConnect return s } +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *CreateConnectorProfileInput) SetConnectorLabel(v string) *CreateConnectorProfileInput { + s.ConnectorLabel = &v + return s +} + // SetConnectorProfileConfig sets the ConnectorProfileConfig field's value. func (s *CreateConnectorProfileInput) SetConnectorProfileConfig(v *ConnectorProfileConfig) *CreateConnectorProfileInput { s.ConnectorProfileConfig = v @@ -3943,9 +5187,358 @@ func (s *CreateFlowInput) Validate() error { } } } - if s.TriggerConfig != nil { - if err := s.TriggerConfig.Validate(); err != nil { - invalidParams.AddNested("TriggerConfig", err.(request.ErrInvalidParams)) + if s.TriggerConfig != nil { + if err := s.TriggerConfig.Validate(); err != nil { + invalidParams.AddNested("TriggerConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateFlowInput) SetDescription(v string) *CreateFlowInput { + s.Description = &v + return s +} + +// SetDestinationFlowConfigList sets the DestinationFlowConfigList field's value. +func (s *CreateFlowInput) SetDestinationFlowConfigList(v []*DestinationFlowConfig) *CreateFlowInput { + s.DestinationFlowConfigList = v + return s +} + +// SetFlowName sets the FlowName field's value. +func (s *CreateFlowInput) SetFlowName(v string) *CreateFlowInput { + s.FlowName = &v + return s +} + +// SetKmsArn sets the KmsArn field's value. +func (s *CreateFlowInput) SetKmsArn(v string) *CreateFlowInput { + s.KmsArn = &v + return s +} + +// SetSourceFlowConfig sets the SourceFlowConfig field's value. +func (s *CreateFlowInput) SetSourceFlowConfig(v *SourceFlowConfig) *CreateFlowInput { + s.SourceFlowConfig = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateFlowInput) SetTags(v map[string]*string) *CreateFlowInput { + s.Tags = v + return s +} + +// SetTasks sets the Tasks field's value. +func (s *CreateFlowInput) SetTasks(v []*Task) *CreateFlowInput { + s.Tasks = v + return s +} + +// SetTriggerConfig sets the TriggerConfig field's value. +func (s *CreateFlowInput) SetTriggerConfig(v *TriggerConfig) *CreateFlowInput { + s.TriggerConfig = v + return s +} + +type CreateFlowOutput struct { + _ struct{} `type:"structure"` + + // The flow's Amazon Resource Name (ARN). + FlowArn *string `locationName:"flowArn" type:"string"` + + // Indicates the current status of the flow. + FlowStatus *string `locationName:"flowStatus" type:"string" enum:"FlowStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFlowOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateFlowOutput) GoString() string { + return s.String() +} + +// SetFlowArn sets the FlowArn field's value. +func (s *CreateFlowOutput) SetFlowArn(v string) *CreateFlowOutput { + s.FlowArn = &v + return s +} + +// SetFlowStatus sets the FlowStatus field's value. +func (s *CreateFlowOutput) SetFlowStatus(v string) *CreateFlowOutput { + s.FlowStatus = &v + return s +} + +// Configuration information required for custom authentication. +type CustomAuthConfig struct { + _ struct{} `type:"structure"` + + // Information about authentication parameters required for authentication. + AuthParameters []*AuthParameter `locationName:"authParameters" type:"list"` + + // The authentication type that the custom connector uses. + CustomAuthenticationType *string `locationName:"customAuthenticationType" 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 CustomAuthConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomAuthConfig) GoString() string { + return s.String() +} + +// SetAuthParameters sets the AuthParameters field's value. +func (s *CustomAuthConfig) SetAuthParameters(v []*AuthParameter) *CustomAuthConfig { + s.AuthParameters = v + return s +} + +// SetCustomAuthenticationType sets the CustomAuthenticationType field's value. +func (s *CustomAuthConfig) SetCustomAuthenticationType(v string) *CustomAuthConfig { + s.CustomAuthenticationType = &v + return s +} + +// The custom credentials required for custom authentication. +type CustomAuthCredentials struct { + _ struct{} `type:"structure"` + + // A map that holds custom authentication credentials. + CredentialsMap map[string]*string `locationName:"credentialsMap" type:"map"` + + // The custom authentication type that the connector uses. + // + // CustomAuthenticationType is a required field + CustomAuthenticationType *string `locationName:"customAuthenticationType" 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 CustomAuthCredentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomAuthCredentials) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomAuthCredentials) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomAuthCredentials"} + if s.CustomAuthenticationType == nil { + invalidParams.Add(request.NewErrParamRequired("CustomAuthenticationType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCredentialsMap sets the CredentialsMap field's value. +func (s *CustomAuthCredentials) SetCredentialsMap(v map[string]*string) *CustomAuthCredentials { + s.CredentialsMap = v + return s +} + +// SetCustomAuthenticationType sets the CustomAuthenticationType field's value. +func (s *CustomAuthCredentials) SetCustomAuthenticationType(v string) *CustomAuthCredentials { + s.CustomAuthenticationType = &v + return s +} + +// The properties that are applied when the custom connector is being used as +// a destination. +type CustomConnectorDestinationProperties struct { + _ struct{} `type:"structure"` + + // The custom properties that are specific to the connector when it's used as + // a destination in the flow. + CustomProperties map[string]*string `locationName:"customProperties" type:"map"` + + // The entity specified in the custom connector as a destination in the flow. + // + // EntityName is a required field + EntityName *string `locationName:"entityName" type:"string" required:"true"` + + // The settings that determine how Amazon AppFlow handles an error when placing + // data in the custom connector as destination. + ErrorHandlingConfig *ErrorHandlingConfig `locationName:"errorHandlingConfig" type:"structure"` + + // The name of the field that Amazon AppFlow uses as an ID when performing a + // write operation such as update, delete, or upsert. + IdFieldNames []*string `locationName:"idFieldNames" type:"list"` + + // Specifies the type of write operation to be performed in the custom connector + // when it's used as destination. + WriteOperationType *string `locationName:"writeOperationType" type:"string" enum:"WriteOperationType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomConnectorDestinationProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomConnectorDestinationProperties) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomConnectorDestinationProperties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomConnectorDestinationProperties"} + if s.EntityName == nil { + invalidParams.Add(request.NewErrParamRequired("EntityName")) + } + if s.ErrorHandlingConfig != nil { + if err := s.ErrorHandlingConfig.Validate(); err != nil { + invalidParams.AddNested("ErrorHandlingConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCustomProperties sets the CustomProperties field's value. +func (s *CustomConnectorDestinationProperties) SetCustomProperties(v map[string]*string) *CustomConnectorDestinationProperties { + s.CustomProperties = v + return s +} + +// SetEntityName sets the EntityName field's value. +func (s *CustomConnectorDestinationProperties) SetEntityName(v string) *CustomConnectorDestinationProperties { + s.EntityName = &v + return s +} + +// SetErrorHandlingConfig sets the ErrorHandlingConfig field's value. +func (s *CustomConnectorDestinationProperties) SetErrorHandlingConfig(v *ErrorHandlingConfig) *CustomConnectorDestinationProperties { + s.ErrorHandlingConfig = v + return s +} + +// SetIdFieldNames sets the IdFieldNames field's value. +func (s *CustomConnectorDestinationProperties) SetIdFieldNames(v []*string) *CustomConnectorDestinationProperties { + s.IdFieldNames = v + return s +} + +// SetWriteOperationType sets the WriteOperationType field's value. +func (s *CustomConnectorDestinationProperties) SetWriteOperationType(v string) *CustomConnectorDestinationProperties { + s.WriteOperationType = &v + return s +} + +// The connector-specific profile credentials that are required when using the +// custom connector. +type CustomConnectorProfileCredentials struct { + _ struct{} `type:"structure"` + + // The API keys required for the authentication of the user. + ApiKey *ApiKeyCredentials `locationName:"apiKey" type:"structure"` + + // The authentication type that the custom connector uses for authenticating + // while creating a connector profile. + // + // AuthenticationType is a required field + AuthenticationType *string `locationName:"authenticationType" type:"string" required:"true" enum:"AuthenticationType"` + + // The basic credentials that are required for the authentication of the user. + Basic *BasicAuthCredentials `locationName:"basic" type:"structure"` + + // If the connector uses the custom authentication mechanism, this holds the + // required credentials. + Custom *CustomAuthCredentials `locationName:"custom" type:"structure"` + + // The OAuth 2.0 credentials required for the authentication of the user. + Oauth2 *OAuth2Credentials `locationName:"oauth2" 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 CustomConnectorProfileCredentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomConnectorProfileCredentials) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomConnectorProfileCredentials) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomConnectorProfileCredentials"} + if s.AuthenticationType == nil { + invalidParams.Add(request.NewErrParamRequired("AuthenticationType")) + } + if s.ApiKey != nil { + if err := s.ApiKey.Validate(); err != nil { + invalidParams.AddNested("ApiKey", err.(request.ErrInvalidParams)) + } + } + if s.Basic != nil { + if err := s.Basic.Validate(); err != nil { + invalidParams.AddNested("Basic", err.(request.ErrInvalidParams)) + } + } + if s.Custom != nil { + if err := s.Custom.Validate(); err != nil { + invalidParams.AddNested("Custom", err.(request.ErrInvalidParams)) } } @@ -3955,62 +5548,105 @@ func (s *CreateFlowInput) Validate() error { return nil } -// SetDescription sets the Description field's value. -func (s *CreateFlowInput) SetDescription(v string) *CreateFlowInput { - s.Description = &v +// SetApiKey sets the ApiKey field's value. +func (s *CustomConnectorProfileCredentials) SetApiKey(v *ApiKeyCredentials) *CustomConnectorProfileCredentials { + s.ApiKey = v return s } -// SetDestinationFlowConfigList sets the DestinationFlowConfigList field's value. -func (s *CreateFlowInput) SetDestinationFlowConfigList(v []*DestinationFlowConfig) *CreateFlowInput { - s.DestinationFlowConfigList = v +// SetAuthenticationType sets the AuthenticationType field's value. +func (s *CustomConnectorProfileCredentials) SetAuthenticationType(v string) *CustomConnectorProfileCredentials { + s.AuthenticationType = &v return s } -// SetFlowName sets the FlowName field's value. -func (s *CreateFlowInput) SetFlowName(v string) *CreateFlowInput { - s.FlowName = &v +// SetBasic sets the Basic field's value. +func (s *CustomConnectorProfileCredentials) SetBasic(v *BasicAuthCredentials) *CustomConnectorProfileCredentials { + s.Basic = v return s } -// SetKmsArn sets the KmsArn field's value. -func (s *CreateFlowInput) SetKmsArn(v string) *CreateFlowInput { - s.KmsArn = &v +// SetCustom sets the Custom field's value. +func (s *CustomConnectorProfileCredentials) SetCustom(v *CustomAuthCredentials) *CustomConnectorProfileCredentials { + s.Custom = v return s } -// SetSourceFlowConfig sets the SourceFlowConfig field's value. -func (s *CreateFlowInput) SetSourceFlowConfig(v *SourceFlowConfig) *CreateFlowInput { - s.SourceFlowConfig = v +// SetOauth2 sets the Oauth2 field's value. +func (s *CustomConnectorProfileCredentials) SetOauth2(v *OAuth2Credentials) *CustomConnectorProfileCredentials { + s.Oauth2 = v return s } -// SetTags sets the Tags field's value. -func (s *CreateFlowInput) SetTags(v map[string]*string) *CreateFlowInput { - s.Tags = v - return s +// The profile properties required by the custom connector. +type CustomConnectorProfileProperties struct { + _ struct{} `type:"structure"` + + // The OAuth 2.0 properties required for OAuth 2.0 authentication. + OAuth2Properties *OAuth2Properties `locationName:"oAuth2Properties" type:"structure"` + + // A map of properties that are required to create a profile for the custom + // connector. + ProfileProperties map[string]*string `locationName:"profileProperties" type:"map"` } -// SetTasks sets the Tasks field's value. -func (s *CreateFlowInput) SetTasks(v []*Task) *CreateFlowInput { - s.Tasks = v +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomConnectorProfileProperties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CustomConnectorProfileProperties) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomConnectorProfileProperties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomConnectorProfileProperties"} + if s.OAuth2Properties != nil { + if err := s.OAuth2Properties.Validate(); err != nil { + invalidParams.AddNested("OAuth2Properties", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOAuth2Properties sets the OAuth2Properties field's value. +func (s *CustomConnectorProfileProperties) SetOAuth2Properties(v *OAuth2Properties) *CustomConnectorProfileProperties { + s.OAuth2Properties = v return s } -// SetTriggerConfig sets the TriggerConfig field's value. -func (s *CreateFlowInput) SetTriggerConfig(v *TriggerConfig) *CreateFlowInput { - s.TriggerConfig = v +// SetProfileProperties sets the ProfileProperties field's value. +func (s *CustomConnectorProfileProperties) SetProfileProperties(v map[string]*string) *CustomConnectorProfileProperties { + s.ProfileProperties = v return s } -type CreateFlowOutput struct { +// The properties that are applied when the custom connector is being used as +// a source. +type CustomConnectorSourceProperties struct { _ struct{} `type:"structure"` - // The flow's Amazon Resource Name (ARN). - FlowArn *string `locationName:"flowArn" type:"string"` + // Custom properties that are required to use the custom connector as a source. + CustomProperties map[string]*string `locationName:"customProperties" type:"map"` - // Indicates the current status of the flow. - FlowStatus *string `locationName:"flowStatus" type:"string" enum:"FlowStatus"` + // The entity specified in the custom connector as a source in the flow. + // + // EntityName is a required field + EntityName *string `locationName:"entityName" type:"string" required:"true"` } // String returns the string representation. @@ -4018,7 +5654,7 @@ type CreateFlowOutput 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 CreateFlowOutput) String() string { +func (s CustomConnectorSourceProperties) String() string { return awsutil.Prettify(s) } @@ -4027,19 +5663,32 @@ func (s CreateFlowOutput) 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 CreateFlowOutput) GoString() string { +func (s CustomConnectorSourceProperties) GoString() string { return s.String() } -// SetFlowArn sets the FlowArn field's value. -func (s *CreateFlowOutput) SetFlowArn(v string) *CreateFlowOutput { - s.FlowArn = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *CustomConnectorSourceProperties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CustomConnectorSourceProperties"} + if s.EntityName == nil { + invalidParams.Add(request.NewErrParamRequired("EntityName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCustomProperties sets the CustomProperties field's value. +func (s *CustomConnectorSourceProperties) SetCustomProperties(v map[string]*string) *CustomConnectorSourceProperties { + s.CustomProperties = v return s } -// SetFlowStatus sets the FlowStatus field's value. -func (s *CreateFlowOutput) SetFlowStatus(v string) *CreateFlowOutput { - s.FlowStatus = &v +// SetEntityName sets the EntityName field's value. +func (s *CustomConnectorSourceProperties) SetEntityName(v string) *CustomConnectorSourceProperties { + s.EntityName = &v return s } @@ -4130,8 +5779,12 @@ type DatadogConnectorProfileCredentials struct { // A unique alphanumeric identifier used to authenticate a user, developer, // or calling program to your API. // + // ApiKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by DatadogConnectorProfileCredentials's + // String and GoString methods. + // // ApiKey is a required field - ApiKey *string `locationName:"apiKey" type:"string" required:"true"` + ApiKey *string `locationName:"apiKey" type:"string" required:"true" sensitive:"true"` // Application keys, in conjunction with your API key, give you full access // to Datadog’s programmatic API. Application keys are associated with the @@ -4466,6 +6119,9 @@ func (s DeleteFlowOutput) GoString() string { type DescribeConnectorEntityInput struct { _ struct{} `type:"structure"` + // The version of the API that's used by the connector. + ApiVersion *string `locationName:"apiVersion" type:"string"` + // The entity name for that connector. // // ConnectorEntityName is a required field @@ -4511,6 +6167,12 @@ func (s *DescribeConnectorEntityInput) Validate() error { return nil } +// SetApiVersion sets the ApiVersion field's value. +func (s *DescribeConnectorEntityInput) SetApiVersion(v string) *DescribeConnectorEntityInput { + s.ApiVersion = &v + return s +} + // SetConnectorEntityName sets the ConnectorEntityName field's value. func (s *DescribeConnectorEntityInput) SetConnectorEntityName(v string) *DescribeConnectorEntityInput { s.ConnectorEntityName = &v @@ -4563,9 +6225,103 @@ func (s *DescribeConnectorEntityOutput) SetConnectorEntityFields(v []*ConnectorE return s } +type DescribeConnectorInput struct { + _ struct{} `type:"structure"` + + // The label of the connector. The label is unique for each ConnectorRegistration + // in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR + // connector type/. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + + // The connector type, such as CUSTOMCONNECTOR, Saleforce, Marketo. Please choose + // CUSTOMCONNECTOR for Lambda based custom connectors. + // + // ConnectorType is a required field + ConnectorType *string `locationName:"connectorType" type:"string" required:"true" enum:"ConnectorType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeConnectorInput"} + if s.ConnectorType == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectorType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *DescribeConnectorInput) SetConnectorLabel(v string) *DescribeConnectorInput { + s.ConnectorLabel = &v + return s +} + +// SetConnectorType sets the ConnectorType field's value. +func (s *DescribeConnectorInput) SetConnectorType(v string) *DescribeConnectorInput { + s.ConnectorType = &v + return s +} + +type DescribeConnectorOutput struct { + _ struct{} `type:"structure"` + + // Configuration info of all the connectors that the user requested. + ConnectorConfiguration *ConnectorConfiguration `locationName:"connectorConfiguration" 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 DescribeConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeConnectorOutput) GoString() string { + return s.String() +} + +// SetConnectorConfiguration sets the ConnectorConfiguration field's value. +func (s *DescribeConnectorOutput) SetConnectorConfiguration(v *ConnectorConfiguration) *DescribeConnectorOutput { + s.ConnectorConfiguration = v + return s +} + type DescribeConnectorProfilesInput struct { _ struct{} `type:"structure"` + // The name of the connector. The name is unique for each ConnectorRegistration + // in your Amazon Web Services account. Only needed if calling for CUSTOMCONNECTOR + // connector type/. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + // The name of the connector profile. The name is unique for each ConnectorProfile // in the Amazon Web Services account. ConnectorProfileNames []*string `locationName:"connectorProfileNames" type:"list"` @@ -4612,6 +6368,12 @@ func (s *DescribeConnectorProfilesInput) Validate() error { return nil } +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *DescribeConnectorProfilesInput) SetConnectorLabel(v string) *DescribeConnectorProfilesInput { + s.ConnectorLabel = &v + return s +} + // SetConnectorProfileNames sets the ConnectorProfileNames field's value. func (s *DescribeConnectorProfilesInput) SetConnectorProfileNames(v []*string) *DescribeConnectorProfilesInput { s.ConnectorProfileNames = v @@ -4683,6 +6445,10 @@ type DescribeConnectorsInput struct { // The type of connector, such as Salesforce, Amplitude, and so on. ConnectorTypes []*string `locationName:"connectorTypes" type:"list"` + // The maximum number of items that should be returned in the result set. The + // default is 20. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + // The pagination token for the next page of data. NextToken *string `locationName:"nextToken" type:"string"` } @@ -4705,12 +6471,31 @@ func (s DescribeConnectorsInput) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeConnectorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeConnectorsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetConnectorTypes sets the ConnectorTypes field's value. func (s *DescribeConnectorsInput) SetConnectorTypes(v []*string) *DescribeConnectorsInput { s.ConnectorTypes = v return s } +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeConnectorsInput) SetMaxResults(v int64) *DescribeConnectorsInput { + s.MaxResults = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *DescribeConnectorsInput) SetNextToken(v string) *DescribeConnectorsInput { s.NextToken = &v @@ -4723,6 +6508,9 @@ type DescribeConnectorsOutput struct { // The configuration that is applied to the connectors used in the flow. ConnectorConfigurations map[string]*ConnectorConfiguration `locationName:"connectorConfigurations" type:"map"` + // Information about the connectors supported in Amazon AppFlow. + Connectors []*ConnectorDetail `locationName:"connectors" type:"list"` + // The pagination token for the next page of data. NextToken *string `locationName:"nextToken" type:"string"` } @@ -4751,6 +6539,12 @@ func (s *DescribeConnectorsOutput) SetConnectorConfigurations(v map[string]*Conn return s } +// SetConnectors sets the Connectors field's value. +func (s *DescribeConnectorsOutput) SetConnectors(v []*ConnectorDetail) *DescribeConnectorsOutput { + s.Connectors = v + return s +} + // SetNextToken sets the NextToken field's value. func (s *DescribeConnectorsOutput) SetNextToken(v string) *DescribeConnectorsOutput { s.NextToken = &v @@ -5091,6 +6885,9 @@ func (s *DescribeFlowOutput) SetTriggerConfig(v *TriggerConfig) *DescribeFlowOut type DestinationConnectorProperties struct { _ struct{} `type:"structure"` + // The properties that are required to query the custom Connector. + CustomConnector *CustomConnectorDestinationProperties `type:"structure"` + // The properties required to query Amazon Connect Customer Profiles. CustomerProfiles *CustomerProfilesDestinationProperties `type:"structure"` @@ -5143,6 +6940,11 @@ func (s DestinationConnectorProperties) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DestinationConnectorProperties) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DestinationConnectorProperties"} + if s.CustomConnector != nil { + if err := s.CustomConnector.Validate(); err != nil { + invalidParams.AddNested("CustomConnector", err.(request.ErrInvalidParams)) + } + } if s.CustomerProfiles != nil { if err := s.CustomerProfiles.Validate(); err != nil { invalidParams.AddNested("CustomerProfiles", err.(request.ErrInvalidParams)) @@ -5195,6 +6997,12 @@ func (s *DestinationConnectorProperties) Validate() error { return nil } +// SetCustomConnector sets the CustomConnector field's value. +func (s *DestinationConnectorProperties) SetCustomConnector(v *CustomConnectorDestinationProperties) *DestinationConnectorProperties { + s.CustomConnector = v + return s +} + // SetCustomerProfiles sets the CustomerProfiles field's value. func (s *DestinationConnectorProperties) SetCustomerProfiles(v *CustomerProfilesDestinationProperties) *DestinationConnectorProperties { s.CustomerProfiles = v @@ -5263,6 +7071,9 @@ type DestinationFieldProperties struct { // Specifies if the destination field can be created by the current user. IsCreatable *bool `locationName:"isCreatable" type:"boolean"` + // Specifies whether the field can use the default value during a Create operation. + IsDefaultedOnCreate *bool `locationName:"isDefaultedOnCreate" type:"boolean"` + // Specifies if the destination field can have a null value. IsNullable *bool `locationName:"isNullable" type:"boolean"` @@ -5304,6 +7115,12 @@ func (s *DestinationFieldProperties) SetIsCreatable(v bool) *DestinationFieldPro return s } +// SetIsDefaultedOnCreate sets the IsDefaultedOnCreate field's value. +func (s *DestinationFieldProperties) SetIsDefaultedOnCreate(v bool) *DestinationFieldProperties { + s.IsDefaultedOnCreate = &v + return s +} + // SetIsNullable sets the IsNullable field's value. func (s *DestinationFieldProperties) SetIsNullable(v bool) *DestinationFieldProperties { s.IsNullable = &v @@ -5333,6 +7150,9 @@ func (s *DestinationFieldProperties) SetSupportedWriteOperations(v []*string) *D type DestinationFlowConfig struct { _ struct{} `type:"structure"` + // The API version that the destination connector uses. + ApiVersion *string `locationName:"apiVersion" type:"string"` + // The name of the connector profile. This name must be unique for each connector // profile in the Amazon Web Services account. ConnectorProfileName *string `locationName:"connectorProfileName" type:"string"` @@ -5387,6 +7207,12 @@ func (s *DestinationFlowConfig) Validate() error { return nil } +// SetApiVersion sets the ApiVersion field's value. +func (s *DestinationFlowConfig) SetApiVersion(v string) *DestinationFlowConfig { + s.ApiVersion = &v + return s +} + // SetConnectorProfileName sets the ConnectorProfileName field's value. func (s *DestinationFlowConfig) SetConnectorProfileName(v string) *DestinationFlowConfig { s.ConnectorProfileName = &v @@ -5972,19 +7798,31 @@ func (s *ExecutionResult) SetRecordsProcessed(v int64) *ExecutionResult { type FieldTypeDetails struct { _ struct{} `type:"structure"` + // This is the allowable length range for this field's value. + FieldLengthRange *Range `locationName:"fieldLengthRange" type:"structure"` + // The type of field, such as string, integer, date, and so on. // // FieldType is a required field FieldType *string `locationName:"fieldType" type:"string" required:"true"` + // The range of values this field can hold. + FieldValueRange *Range `locationName:"fieldValueRange" type:"structure"` + // The list of operators supported by a field. // // FilterOperators is a required field FilterOperators []*string `locationName:"filterOperators" type:"list" required:"true"` + // The date format that the field supports. + SupportedDateFormat *string `locationName:"supportedDateFormat" type:"string"` + // The list of values that a field can contain. For example, a Boolean fieldType // can have two values: "true" and "false". SupportedValues []*string `locationName:"supportedValues" type:"list"` + + // The regular expression pattern for the field name. + ValueRegexPattern *string `locationName:"valueRegexPattern" type:"string"` } // String returns the string representation. @@ -6005,24 +7843,48 @@ func (s FieldTypeDetails) GoString() string { return s.String() } +// SetFieldLengthRange sets the FieldLengthRange field's value. +func (s *FieldTypeDetails) SetFieldLengthRange(v *Range) *FieldTypeDetails { + s.FieldLengthRange = v + return s +} + // SetFieldType sets the FieldType field's value. func (s *FieldTypeDetails) SetFieldType(v string) *FieldTypeDetails { s.FieldType = &v return s } +// SetFieldValueRange sets the FieldValueRange field's value. +func (s *FieldTypeDetails) SetFieldValueRange(v *Range) *FieldTypeDetails { + s.FieldValueRange = v + return s +} + // SetFilterOperators sets the FilterOperators field's value. func (s *FieldTypeDetails) SetFilterOperators(v []*string) *FieldTypeDetails { s.FilterOperators = v return s } +// SetSupportedDateFormat sets the SupportedDateFormat field's value. +func (s *FieldTypeDetails) SetSupportedDateFormat(v string) *FieldTypeDetails { + s.SupportedDateFormat = &v + return s +} + // SetSupportedValues sets the SupportedValues field's value. func (s *FieldTypeDetails) SetSupportedValues(v []*string) *FieldTypeDetails { s.SupportedValues = v return s } +// SetValueRegexPattern sets the ValueRegexPattern field's value. +func (s *FieldTypeDetails) SetValueRegexPattern(v string) *FieldTypeDetails { + s.ValueRegexPattern = &v + return s +} + // The properties of the flow, such as its source, destination, trigger type, // and so on. type FlowDefinition struct { @@ -6037,6 +7899,9 @@ type FlowDefinition struct { // A user-entered description of the flow. Description *string `locationName:"description" type:"string"` + // The label of the destination connector in the flow. + DestinationConnectorLabel *string `locationName:"destinationConnectorLabel" type:"string"` + // Specifies the destination connector type, such as Salesforce, Amazon S3, // Amplitude, and so on. DestinationConnectorType *string `locationName:"destinationConnectorType" type:"string" enum:"ConnectorType"` @@ -6060,6 +7925,9 @@ type FlowDefinition struct { // Specifies the account user name that most recently updated the flow. LastUpdatedBy *string `locationName:"lastUpdatedBy" type:"string"` + // The label of the source connector in the flow. + SourceConnectorLabel *string `locationName:"sourceConnectorLabel" type:"string"` + // Specifies the source connector type, such as Salesforce, Amazon S3, Amplitude, // and so on. SourceConnectorType *string `locationName:"sourceConnectorType" type:"string" enum:"ConnectorType"` @@ -6107,6 +7975,12 @@ func (s *FlowDefinition) SetDescription(v string) *FlowDefinition { return s } +// SetDestinationConnectorLabel sets the DestinationConnectorLabel field's value. +func (s *FlowDefinition) SetDestinationConnectorLabel(v string) *FlowDefinition { + s.DestinationConnectorLabel = &v + return s +} + // SetDestinationConnectorType sets the DestinationConnectorType field's value. func (s *FlowDefinition) SetDestinationConnectorType(v string) *FlowDefinition { s.DestinationConnectorType = &v @@ -6149,6 +8023,12 @@ func (s *FlowDefinition) SetLastUpdatedBy(v string) *FlowDefinition { return s } +// SetSourceConnectorLabel sets the SourceConnectorLabel field's value. +func (s *FlowDefinition) SetSourceConnectorLabel(v string) *FlowDefinition { + s.SourceConnectorLabel = &v + return s +} + // SetSourceConnectorType sets the SourceConnectorType field's value. func (s *FlowDefinition) SetSourceConnectorType(v string) *FlowDefinition { s.SourceConnectorType = &v @@ -6853,9 +8733,60 @@ func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } +// Contains information about the configuration of the lambda which is being +// registered as the connector. +type LambdaConnectorProvisioningConfig struct { + _ struct{} `type:"structure"` + + // Lambda ARN of the connector being registered. + // + // LambdaArn is a required field + LambdaArn *string `locationName:"lambdaArn" 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 LambdaConnectorProvisioningConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LambdaConnectorProvisioningConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LambdaConnectorProvisioningConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LambdaConnectorProvisioningConfig"} + if s.LambdaArn == nil { + invalidParams.Add(request.NewErrParamRequired("LambdaArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLambdaArn sets the LambdaArn field's value. +func (s *LambdaConnectorProvisioningConfig) SetLambdaArn(v string) *LambdaConnectorProvisioningConfig { + s.LambdaArn = &v + return s +} + type ListConnectorEntitiesInput struct { _ struct{} `type:"structure"` + // The version of the API that's used by the connector. + ApiVersion *string `locationName:"apiVersion" type:"string"` + // The name of the connector profile. The name is unique for each ConnectorProfile // in the Amazon Web Services account, and is used to query the downstream connector. ConnectorProfileName *string `locationName:"connectorProfileName" type:"string"` @@ -6890,6 +8821,12 @@ func (s ListConnectorEntitiesInput) GoString() string { return s.String() } +// SetApiVersion sets the ApiVersion field's value. +func (s *ListConnectorEntitiesInput) SetApiVersion(v string) *ListConnectorEntitiesInput { + s.ApiVersion = &v + return s +} + // SetConnectorProfileName sets the ConnectorProfileName field's value. func (s *ListConnectorEntitiesInput) SetConnectorProfileName(v string) *ListConnectorEntitiesInput { s.ConnectorProfileName = &v @@ -6943,6 +8880,101 @@ func (s *ListConnectorEntitiesOutput) SetConnectorEntityMap(v map[string][]*Conn return s } +type ListConnectorsInput struct { + _ struct{} `type:"structure"` + + // Specifies the maximum number of items that should be returned in the result + // set. The default for maxResults is 20 (for all paginated API operations). + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token for the next page of data. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListConnectorsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListConnectorsInput"} + 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 *ListConnectorsInput) SetMaxResults(v int64) *ListConnectorsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConnectorsInput) SetNextToken(v string) *ListConnectorsInput { + s.NextToken = &v + return s +} + +type ListConnectorsOutput struct { + _ struct{} `type:"structure"` + + // Contains information about the connectors supported by Amazon AppFlow. + Connectors []*ConnectorDetail `locationName:"connectors" type:"list"` + + // The pagination token for the next page of data. If nextToken=null, this means + // that all records have been fetched. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListConnectorsOutput) GoString() string { + return s.String() +} + +// SetConnectors sets the Connectors field's value. +func (s *ListConnectorsOutput) SetConnectors(v []*ConnectorDetail) *ListConnectorsOutput { + s.Connectors = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListConnectorsOutput) SetNextToken(v string) *ListConnectorsOutput { + s.NextToken = &v + return s +} + type ListFlowsInput struct { _ struct{} `type:"structure"` @@ -7347,6 +9379,204 @@ func (s *MarketoSourceProperties) SetObject(v string) *MarketoSourceProperties { return s } +// The OAuth 2.0 credentials required for OAuth 2.0 authentication. +type OAuth2Credentials struct { + _ struct{} `type:"structure"` + + // The access token used to access the connector on your behalf. + // + // AccessToken is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OAuth2Credentials's + // String and GoString methods. + AccessToken *string `locationName:"accessToken" type:"string" sensitive:"true"` + + // The identifier for the desired client. + ClientId *string `locationName:"clientId" type:"string"` + + // The client secret used by the OAuth client to authenticate to the authorization + // server. + // + // ClientSecret is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by OAuth2Credentials's + // String and GoString methods. + ClientSecret *string `locationName:"clientSecret" type:"string" sensitive:"true"` + + // Used by select connectors for which the OAuth workflow is supported, such + // as Salesforce, Google Analytics, Marketo, Zendesk, and Slack. + OAuthRequest *ConnectorOAuthRequest `locationName:"oAuthRequest" type:"structure"` + + // The refresh token used to refresh an expired access token. + RefreshToken *string `locationName:"refreshToken" 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 OAuth2Credentials) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OAuth2Credentials) GoString() string { + return s.String() +} + +// SetAccessToken sets the AccessToken field's value. +func (s *OAuth2Credentials) SetAccessToken(v string) *OAuth2Credentials { + s.AccessToken = &v + return s +} + +// SetClientId sets the ClientId field's value. +func (s *OAuth2Credentials) SetClientId(v string) *OAuth2Credentials { + s.ClientId = &v + return s +} + +// SetClientSecret sets the ClientSecret field's value. +func (s *OAuth2Credentials) SetClientSecret(v string) *OAuth2Credentials { + s.ClientSecret = &v + return s +} + +// SetOAuthRequest sets the OAuthRequest field's value. +func (s *OAuth2Credentials) SetOAuthRequest(v *ConnectorOAuthRequest) *OAuth2Credentials { + s.OAuthRequest = v + return s +} + +// SetRefreshToken sets the RefreshToken field's value. +func (s *OAuth2Credentials) SetRefreshToken(v string) *OAuth2Credentials { + s.RefreshToken = &v + return s +} + +// Contains the default values required for OAuth 2.0 authentication. +type OAuth2Defaults struct { + _ struct{} `type:"structure"` + + // Auth code URLs that can be used for OAuth 2.0 authentication. + AuthCodeUrls []*string `locationName:"authCodeUrls" type:"list"` + + // OAuth 2.0 grant types supported by the connector. + Oauth2GrantTypesSupported []*string `locationName:"oauth2GrantTypesSupported" type:"list"` + + // OAuth 2.0 scopes that the connector supports. + OauthScopes []*string `locationName:"oauthScopes" type:"list"` + + // Token URLs that can be used for OAuth 2.0 authentication. + TokenUrls []*string `locationName:"tokenUrls" 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 OAuth2Defaults) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OAuth2Defaults) GoString() string { + return s.String() +} + +// SetAuthCodeUrls sets the AuthCodeUrls field's value. +func (s *OAuth2Defaults) SetAuthCodeUrls(v []*string) *OAuth2Defaults { + s.AuthCodeUrls = v + return s +} + +// SetOauth2GrantTypesSupported sets the Oauth2GrantTypesSupported field's value. +func (s *OAuth2Defaults) SetOauth2GrantTypesSupported(v []*string) *OAuth2Defaults { + s.Oauth2GrantTypesSupported = v + return s +} + +// SetOauthScopes sets the OauthScopes field's value. +func (s *OAuth2Defaults) SetOauthScopes(v []*string) *OAuth2Defaults { + s.OauthScopes = v + return s +} + +// SetTokenUrls sets the TokenUrls field's value. +func (s *OAuth2Defaults) SetTokenUrls(v []*string) *OAuth2Defaults { + s.TokenUrls = v + return s +} + +// The OAuth 2.0 properties required for OAuth 2.0 authentication. +type OAuth2Properties struct { + _ struct{} `type:"structure"` + + // The OAuth 2.0 grant type used by connector for OAuth 2.0 authentication. + // + // OAuth2GrantType is a required field + OAuth2GrantType *string `locationName:"oAuth2GrantType" type:"string" required:"true" enum:"OAuth2GrantType"` + + // The token URL required for OAuth 2.0 authentication. + // + // TokenUrl is a required field + TokenUrl *string `locationName:"tokenUrl" 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 OAuth2Properties) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OAuth2Properties) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OAuth2Properties) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OAuth2Properties"} + if s.OAuth2GrantType == nil { + invalidParams.Add(request.NewErrParamRequired("OAuth2GrantType")) + } + if s.TokenUrl == nil { + invalidParams.Add(request.NewErrParamRequired("TokenUrl")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOAuth2GrantType sets the OAuth2GrantType field's value. +func (s *OAuth2Properties) SetOAuth2GrantType(v string) *OAuth2Properties { + s.OAuth2GrantType = &v + return s +} + +// SetTokenUrl sets the TokenUrl field's value. +func (s *OAuth2Properties) SetTokenUrl(v string) *OAuth2Properties { + s.TokenUrl = &v + return s +} + // The OAuth credentials required for OAuth type authentication. type OAuthCredentials struct { _ struct{} `type:"structure"` @@ -7610,9 +9840,50 @@ func (s *PrivateConnectionProvisioningState) SetFailureMessage(v string) *Privat return s } -// SetStatus sets the Status field's value. -func (s *PrivateConnectionProvisioningState) SetStatus(v string) *PrivateConnectionProvisioningState { - s.Status = &v +// SetStatus sets the Status field's value. +func (s *PrivateConnectionProvisioningState) SetStatus(v string) *PrivateConnectionProvisioningState { + s.Status = &v + return s +} + +// The range of values that the property supports. +type Range struct { + _ struct{} `type:"structure"` + + // Maximum value supported by the field. + Maximum *float64 `locationName:"maximum" type:"double"` + + // Minimum value supported by the field. + Minimum *float64 `locationName:"minimum" type:"double"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Range) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Range) GoString() string { + return s.String() +} + +// SetMaximum sets the Maximum field's value. +func (s *Range) SetMaximum(v float64) *Range { + s.Maximum = &v + return s +} + +// SetMinimum sets the Minimum field's value. +func (s *Range) SetMinimum(v float64) *Range { + s.Minimum = &v return s } @@ -7885,6 +10156,113 @@ func (s RedshiftMetadata) GoString() string { return s.String() } +type RegisterConnectorInput struct { + _ struct{} `type:"structure"` + + // The name of the connector. The name is unique for each ConnectorRegistration + // in your Amazon Web Services account. + ConnectorLabel *string `locationName:"connectorLabel" type:"string"` + + // The provisioning type of the connector. Currently the only supported value + // is LAMBDA. + ConnectorProvisioningConfig *ConnectorProvisioningConfig `locationName:"connectorProvisioningConfig" type:"structure"` + + // The provisioning type of the connector. Currently the only supported value + // is LAMBDA. + ConnectorProvisioningType *string `locationName:"connectorProvisioningType" type:"string" enum:"ConnectorProvisioningType"` + + // A description about the connector that's being registered. + Description *string `locationName:"description" 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 RegisterConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RegisterConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RegisterConnectorInput"} + if s.ConnectorProvisioningConfig != nil { + if err := s.ConnectorProvisioningConfig.Validate(); err != nil { + invalidParams.AddNested("ConnectorProvisioningConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *RegisterConnectorInput) SetConnectorLabel(v string) *RegisterConnectorInput { + s.ConnectorLabel = &v + return s +} + +// SetConnectorProvisioningConfig sets the ConnectorProvisioningConfig field's value. +func (s *RegisterConnectorInput) SetConnectorProvisioningConfig(v *ConnectorProvisioningConfig) *RegisterConnectorInput { + s.ConnectorProvisioningConfig = v + return s +} + +// SetConnectorProvisioningType sets the ConnectorProvisioningType field's value. +func (s *RegisterConnectorInput) SetConnectorProvisioningType(v string) *RegisterConnectorInput { + s.ConnectorProvisioningType = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *RegisterConnectorInput) SetDescription(v string) *RegisterConnectorInput { + s.Description = &v + return s +} + +type RegisterConnectorOutput struct { + _ struct{} `type:"structure"` + + // The ARN of the connector being registered. + ConnectorArn *string `locationName:"connectorArn" 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 RegisterConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RegisterConnectorOutput) GoString() string { + return s.String() +} + +// SetConnectorArn sets the ConnectorArn field's value. +func (s *RegisterConnectorOutput) SetConnectorArn(v string) *RegisterConnectorOutput { + s.ConnectorArn = &v + return s +} + // The resource specified in the request (such as the source or destination // connector profile) is not found. type ResourceNotFoundException struct { @@ -9113,8 +11491,12 @@ type SingularConnectorProfileCredentials struct { // A unique alphanumeric identifier used to authenticate a user, developer, // or calling program to your API. // + // ApiKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by SingularConnectorProfileCredentials's + // String and GoString methods. + // // ApiKey is a required field - ApiKey *string `locationName:"apiKey" type:"string" required:"true"` + ApiKey *string `locationName:"apiKey" type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -9774,6 +12156,10 @@ type SourceConnectorProperties struct { // Specifies the information that is required for querying Amplitude. Amplitude *AmplitudeSourceProperties `type:"structure"` + // The properties that are applied when the custom connector is being used as + // a source. + CustomConnector *CustomConnectorSourceProperties `type:"structure"` + // Specifies the information that is required for querying Datadog. Datadog *DatadogSourceProperties `type:"structure"` @@ -9843,6 +12229,11 @@ func (s *SourceConnectorProperties) Validate() error { invalidParams.AddNested("Amplitude", err.(request.ErrInvalidParams)) } } + if s.CustomConnector != nil { + if err := s.CustomConnector.Validate(); err != nil { + invalidParams.AddNested("CustomConnector", err.(request.ErrInvalidParams)) + } + } if s.Datadog != nil { if err := s.Datadog.Validate(); err != nil { invalidParams.AddNested("Datadog", err.(request.ErrInvalidParams)) @@ -9921,6 +12312,12 @@ func (s *SourceConnectorProperties) SetAmplitude(v *AmplitudeSourceProperties) * return s } +// SetCustomConnector sets the CustomConnector field's value. +func (s *SourceConnectorProperties) SetCustomConnector(v *CustomConnectorSourceProperties) *SourceConnectorProperties { + s.CustomConnector = v + return s +} + // SetDatadog sets the Datadog field's value. func (s *SourceConnectorProperties) SetDatadog(v *DatadogSourceProperties) *SourceConnectorProperties { s.Datadog = v @@ -10015,6 +12412,9 @@ type SourceFieldProperties struct { // Indicates whether the field can be returned in a search result. IsRetrievable *bool `locationName:"isRetrievable" type:"boolean"` + + // Indicates if this timestamp field can be used for incremental queries. + IsTimestampFieldForIncrementalQueries *bool `locationName:"isTimestampFieldForIncrementalQueries" type:"boolean"` } // String returns the string representation. @@ -10047,11 +12447,20 @@ func (s *SourceFieldProperties) SetIsRetrievable(v bool) *SourceFieldProperties return s } +// SetIsTimestampFieldForIncrementalQueries sets the IsTimestampFieldForIncrementalQueries field's value. +func (s *SourceFieldProperties) SetIsTimestampFieldForIncrementalQueries(v bool) *SourceFieldProperties { + s.IsTimestampFieldForIncrementalQueries = &v + return s +} + // Contains information about the configuration of the source connector used // in the flow. type SourceFlowConfig struct { _ struct{} `type:"structure"` + // The API version of the connector when it's used as a source in the flow. + ApiVersion *string `locationName:"apiVersion" type:"string"` + // The name of the connector profile. This name must be unique for each connector // profile in the Amazon Web Services account. ConnectorProfileName *string `locationName:"connectorProfileName" type:"string"` @@ -10111,6 +12520,12 @@ func (s *SourceFlowConfig) Validate() error { return nil } +// SetApiVersion sets the ApiVersion field's value. +func (s *SourceFlowConfig) SetApiVersion(v string) *SourceFlowConfig { + s.ApiVersion = &v + return s +} + // SetConnectorProfileName sets the ConnectorProfileName field's value. func (s *SourceFlowConfig) SetConnectorProfileName(v string) *SourceFlowConfig { s.ConnectorProfileName = &v @@ -10531,6 +12946,71 @@ func (s *Task) SetTaskType(v string) *Task { return s } +// API calls have exceeded the maximum allowed API request rate per account +// and per Region. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + // The connector-specific profile credentials required when using Trend Micro. type TrendmicroConnectorProfileCredentials struct { _ struct{} `type:"structure"` @@ -10788,6 +13268,86 @@ func (s *TriggerProperties) SetScheduled(v *ScheduledTriggerProperties) *Trigger return s } +type UnregisterConnectorInput struct { + _ struct{} `type:"structure"` + + // The label of the connector. The label is unique for each ConnectorRegistration + // in your Amazon Web Services account. + // + // ConnectorLabel is a required field + ConnectorLabel *string `locationName:"connectorLabel" type:"string" required:"true"` + + // Indicates whether Amazon AppFlow should unregister the connector, even if + // it is currently in use in one or more connector profiles. The default value + // is false. + ForceDelete *bool `locationName:"forceDelete" 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 UnregisterConnectorInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnregisterConnectorInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UnregisterConnectorInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UnregisterConnectorInput"} + if s.ConnectorLabel == nil { + invalidParams.Add(request.NewErrParamRequired("ConnectorLabel")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetConnectorLabel sets the ConnectorLabel field's value. +func (s *UnregisterConnectorInput) SetConnectorLabel(v string) *UnregisterConnectorInput { + s.ConnectorLabel = &v + return s +} + +// SetForceDelete sets the ForceDelete field's value. +func (s *UnregisterConnectorInput) SetForceDelete(v bool) *UnregisterConnectorInput { + s.ForceDelete = &v + return s +} + +type UnregisterConnectorOutput 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 UnregisterConnectorOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UnregisterConnectorOutput) GoString() string { + return s.String() +} + // The requested operation is not supported for the current flow. type UnsupportedOperationException struct { _ struct{} `type:"structure"` @@ -12009,6 +14569,30 @@ func AmplitudeConnectorOperator_Values() []string { } } +const ( + // AuthenticationTypeOauth2 is a AuthenticationType enum value + AuthenticationTypeOauth2 = "OAUTH2" + + // AuthenticationTypeApikey is a AuthenticationType enum value + AuthenticationTypeApikey = "APIKEY" + + // AuthenticationTypeBasic is a AuthenticationType enum value + AuthenticationTypeBasic = "BASIC" + + // AuthenticationTypeCustom is a AuthenticationType enum value + AuthenticationTypeCustom = "CUSTOM" +) + +// AuthenticationType_Values returns all elements of the AuthenticationType enum +func AuthenticationType_Values() []string { + return []string{ + AuthenticationTypeOauth2, + AuthenticationTypeApikey, + AuthenticationTypeBasic, + AuthenticationTypeCustom, + } +} + const ( // ConnectionModePublic is a ConnectionMode enum value ConnectionModePublic = "Public" @@ -12025,6 +14609,19 @@ func ConnectionMode_Values() []string { } } +// The type of provisioning that the connector supports, such as Lambda. +const ( + // ConnectorProvisioningTypeLambda is a ConnectorProvisioningType enum value + ConnectorProvisioningTypeLambda = "LAMBDA" +) + +// ConnectorProvisioningType_Values returns all elements of the ConnectorProvisioningType enum +func ConnectorProvisioningType_Values() []string { + return []string{ + ConnectorProvisioningTypeLambda, + } +} + const ( // ConnectorTypeSalesforce is a ConnectorType enum value ConnectorTypeSalesforce = "Salesforce" @@ -12091,6 +14688,9 @@ const ( // ConnectorTypeSapodata is a ConnectorType enum value ConnectorTypeSapodata = "SAPOData" + + // ConnectorTypeCustomConnector is a ConnectorType enum value + ConnectorTypeCustomConnector = "CustomConnector" ) // ConnectorType_Values returns all elements of the ConnectorType enum @@ -12118,6 +14718,7 @@ func ConnectorType_Values() []string { ConnectorTypeHoneycode, ConnectorTypeCustomerProfiles, ConnectorTypeSapodata, + ConnectorTypeCustomConnector, } } @@ -12501,6 +15102,22 @@ func MarketoConnectorOperator_Values() []string { } } +const ( + // OAuth2GrantTypeClientCredentials is a OAuth2GrantType enum value + OAuth2GrantTypeClientCredentials = "CLIENT_CREDENTIALS" + + // OAuth2GrantTypeAuthorizationCode is a OAuth2GrantType enum value + OAuth2GrantTypeAuthorizationCode = "AUTHORIZATION_CODE" +) + +// OAuth2GrantType_Values returns all elements of the OAuth2GrantType enum +func OAuth2GrantType_Values() []string { + return []string{ + OAuth2GrantTypeClientCredentials, + OAuth2GrantTypeAuthorizationCode, + } +} + const ( // OperatorProjection is a Operator enum value OperatorProjection = "PROJECTION" @@ -12661,6 +15278,98 @@ func OperatorPropertiesKeys_Values() []string { } } +const ( + // OperatorsProjection is a Operators enum value + OperatorsProjection = "PROJECTION" + + // OperatorsLessThan is a Operators enum value + OperatorsLessThan = "LESS_THAN" + + // OperatorsGreaterThan is a Operators enum value + OperatorsGreaterThan = "GREATER_THAN" + + // OperatorsContains is a Operators enum value + OperatorsContains = "CONTAINS" + + // OperatorsBetween is a Operators enum value + OperatorsBetween = "BETWEEN" + + // OperatorsLessThanOrEqualTo is a Operators enum value + OperatorsLessThanOrEqualTo = "LESS_THAN_OR_EQUAL_TO" + + // OperatorsGreaterThanOrEqualTo is a Operators enum value + OperatorsGreaterThanOrEqualTo = "GREATER_THAN_OR_EQUAL_TO" + + // OperatorsEqualTo is a Operators enum value + OperatorsEqualTo = "EQUAL_TO" + + // OperatorsNotEqualTo is a Operators enum value + OperatorsNotEqualTo = "NOT_EQUAL_TO" + + // OperatorsAddition is a Operators enum value + OperatorsAddition = "ADDITION" + + // OperatorsMultiplication is a Operators enum value + OperatorsMultiplication = "MULTIPLICATION" + + // OperatorsDivision is a Operators enum value + OperatorsDivision = "DIVISION" + + // OperatorsSubtraction is a Operators enum value + OperatorsSubtraction = "SUBTRACTION" + + // OperatorsMaskAll is a Operators enum value + OperatorsMaskAll = "MASK_ALL" + + // OperatorsMaskFirstN is a Operators enum value + OperatorsMaskFirstN = "MASK_FIRST_N" + + // OperatorsMaskLastN is a Operators enum value + OperatorsMaskLastN = "MASK_LAST_N" + + // OperatorsValidateNonNull is a Operators enum value + OperatorsValidateNonNull = "VALIDATE_NON_NULL" + + // OperatorsValidateNonZero is a Operators enum value + OperatorsValidateNonZero = "VALIDATE_NON_ZERO" + + // OperatorsValidateNonNegative is a Operators enum value + OperatorsValidateNonNegative = "VALIDATE_NON_NEGATIVE" + + // OperatorsValidateNumeric is a Operators enum value + OperatorsValidateNumeric = "VALIDATE_NUMERIC" + + // OperatorsNoOp is a Operators enum value + OperatorsNoOp = "NO_OP" +) + +// Operators_Values returns all elements of the Operators enum +func Operators_Values() []string { + return []string{ + OperatorsProjection, + OperatorsLessThan, + OperatorsGreaterThan, + OperatorsContains, + OperatorsBetween, + OperatorsLessThanOrEqualTo, + OperatorsGreaterThanOrEqualTo, + OperatorsEqualTo, + OperatorsNotEqualTo, + OperatorsAddition, + OperatorsMultiplication, + OperatorsDivision, + OperatorsSubtraction, + OperatorsMaskAll, + OperatorsMaskFirstN, + OperatorsMaskLastN, + OperatorsValidateNonNull, + OperatorsValidateNonZero, + OperatorsValidateNonNegative, + OperatorsValidateNumeric, + OperatorsNoOp, + } +} + const ( // PrefixFormatYear is a PrefixFormat enum value PrefixFormatYear = "YEAR" @@ -13544,6 +16253,9 @@ const ( // WriteOperationTypeUpdate is a WriteOperationType enum value WriteOperationTypeUpdate = "UPDATE" + + // WriteOperationTypeDelete is a WriteOperationType enum value + WriteOperationTypeDelete = "DELETE" ) // WriteOperationType_Values returns all elements of the WriteOperationType enum @@ -13552,6 +16264,7 @@ func WriteOperationType_Values() []string { WriteOperationTypeInsert, WriteOperationTypeUpsert, WriteOperationTypeUpdate, + WriteOperationTypeDelete, } } diff --git a/service/appflow/appflowiface/interface.go b/service/appflow/appflowiface/interface.go index b40d8c33135..bb15eeb0f80 100644 --- a/service/appflow/appflowiface/interface.go +++ b/service/appflow/appflowiface/interface.go @@ -76,6 +76,10 @@ type AppflowAPI interface { DeleteFlowWithContext(aws.Context, *appflow.DeleteFlowInput, ...request.Option) (*appflow.DeleteFlowOutput, error) DeleteFlowRequest(*appflow.DeleteFlowInput) (*request.Request, *appflow.DeleteFlowOutput) + DescribeConnector(*appflow.DescribeConnectorInput) (*appflow.DescribeConnectorOutput, error) + DescribeConnectorWithContext(aws.Context, *appflow.DescribeConnectorInput, ...request.Option) (*appflow.DescribeConnectorOutput, error) + DescribeConnectorRequest(*appflow.DescribeConnectorInput) (*request.Request, *appflow.DescribeConnectorOutput) + DescribeConnectorEntity(*appflow.DescribeConnectorEntityInput) (*appflow.DescribeConnectorEntityOutput, error) DescribeConnectorEntityWithContext(aws.Context, *appflow.DescribeConnectorEntityInput, ...request.Option) (*appflow.DescribeConnectorEntityOutput, error) DescribeConnectorEntityRequest(*appflow.DescribeConnectorEntityInput) (*request.Request, *appflow.DescribeConnectorEntityOutput) @@ -109,6 +113,13 @@ type AppflowAPI interface { ListConnectorEntitiesWithContext(aws.Context, *appflow.ListConnectorEntitiesInput, ...request.Option) (*appflow.ListConnectorEntitiesOutput, error) ListConnectorEntitiesRequest(*appflow.ListConnectorEntitiesInput) (*request.Request, *appflow.ListConnectorEntitiesOutput) + ListConnectors(*appflow.ListConnectorsInput) (*appflow.ListConnectorsOutput, error) + ListConnectorsWithContext(aws.Context, *appflow.ListConnectorsInput, ...request.Option) (*appflow.ListConnectorsOutput, error) + ListConnectorsRequest(*appflow.ListConnectorsInput) (*request.Request, *appflow.ListConnectorsOutput) + + ListConnectorsPages(*appflow.ListConnectorsInput, func(*appflow.ListConnectorsOutput, bool) bool) error + ListConnectorsPagesWithContext(aws.Context, *appflow.ListConnectorsInput, func(*appflow.ListConnectorsOutput, bool) bool, ...request.Option) error + ListFlows(*appflow.ListFlowsInput) (*appflow.ListFlowsOutput, error) ListFlowsWithContext(aws.Context, *appflow.ListFlowsInput, ...request.Option) (*appflow.ListFlowsOutput, error) ListFlowsRequest(*appflow.ListFlowsInput) (*request.Request, *appflow.ListFlowsOutput) @@ -120,6 +131,10 @@ type AppflowAPI interface { ListTagsForResourceWithContext(aws.Context, *appflow.ListTagsForResourceInput, ...request.Option) (*appflow.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*appflow.ListTagsForResourceInput) (*request.Request, *appflow.ListTagsForResourceOutput) + RegisterConnector(*appflow.RegisterConnectorInput) (*appflow.RegisterConnectorOutput, error) + RegisterConnectorWithContext(aws.Context, *appflow.RegisterConnectorInput, ...request.Option) (*appflow.RegisterConnectorOutput, error) + RegisterConnectorRequest(*appflow.RegisterConnectorInput) (*request.Request, *appflow.RegisterConnectorOutput) + StartFlow(*appflow.StartFlowInput) (*appflow.StartFlowOutput, error) StartFlowWithContext(aws.Context, *appflow.StartFlowInput, ...request.Option) (*appflow.StartFlowOutput, error) StartFlowRequest(*appflow.StartFlowInput) (*request.Request, *appflow.StartFlowOutput) @@ -132,6 +147,10 @@ type AppflowAPI interface { TagResourceWithContext(aws.Context, *appflow.TagResourceInput, ...request.Option) (*appflow.TagResourceOutput, error) TagResourceRequest(*appflow.TagResourceInput) (*request.Request, *appflow.TagResourceOutput) + UnregisterConnector(*appflow.UnregisterConnectorInput) (*appflow.UnregisterConnectorOutput, error) + UnregisterConnectorWithContext(aws.Context, *appflow.UnregisterConnectorInput, ...request.Option) (*appflow.UnregisterConnectorOutput, error) + UnregisterConnectorRequest(*appflow.UnregisterConnectorInput) (*request.Request, *appflow.UnregisterConnectorOutput) + UntagResource(*appflow.UntagResourceInput) (*appflow.UntagResourceOutput, error) UntagResourceWithContext(aws.Context, *appflow.UntagResourceInput, ...request.Option) (*appflow.UntagResourceOutput, error) UntagResourceRequest(*appflow.UntagResourceInput) (*request.Request, *appflow.UntagResourceOutput) diff --git a/service/appflow/errors.go b/service/appflow/errors.go index ab316eebe96..8ad7bee024b 100644 --- a/service/appflow/errors.go +++ b/service/appflow/errors.go @@ -8,6 +8,12 @@ import ( const ( + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // AppFlow/Requester has invalid or missing permissions. + ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeConflictException for service response error code // "ConflictException". // @@ -49,6 +55,13 @@ const ( // be exceeded. ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // API calls have exceeded the maximum allowed API request rate per account + // and per Region. + ErrCodeThrottlingException = "ThrottlingException" + // ErrCodeUnsupportedOperationException for service response error code // "UnsupportedOperationException". // @@ -63,12 +76,14 @@ const ( ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, "ConflictException": newErrorConflictException, "ConnectorAuthenticationException": newErrorConnectorAuthenticationException, "ConnectorServerException": newErrorConnectorServerException, "InternalServerException": newErrorInternalServerException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, "UnsupportedOperationException": newErrorUnsupportedOperationException, "ValidationException": newErrorValidationException, } diff --git a/service/comprehend/api.go b/service/comprehend/api.go index 8db18dbf860..860a18fc0a4 100644 --- a/service/comprehend/api.go +++ b/service/comprehend/api.go @@ -1300,6 +1300,93 @@ func (c *Comprehend) DeleteEntityRecognizerWithContext(ctx aws.Context, input *D return out, req.Send() } +const opDeleteResourcePolicy = "DeleteResourcePolicy" + +// DeleteResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteResourcePolicy 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 DeleteResourcePolicy for more information on using the DeleteResourcePolicy +// 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 DeleteResourcePolicyRequest method. +// req, resp := client.DeleteResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteResourcePolicy +func (c *Comprehend) DeleteResourcePolicyRequest(input *DeleteResourcePolicyInput) (req *request.Request, output *DeleteResourcePolicyOutput) { + op := &request.Operation{ + Name: opDeleteResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteResourcePolicyInput{} + } + + output = &DeleteResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteResourcePolicy API operation for Amazon Comprehend. +// +// Deletes a resource-based policy that is attached to a custom model. +// +// 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 Comprehend's +// API operation DeleteResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InvalidRequestException +// The request is invalid. +// +// * ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// * InternalServerException +// An internal server error occurred. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DeleteResourcePolicy +func (c *Comprehend) DeleteResourcePolicy(input *DeleteResourcePolicyInput) (*DeleteResourcePolicyOutput, error) { + req, out := c.DeleteResourcePolicyRequest(input) + return out, req.Send() +} + +// DeleteResourcePolicyWithContext is the same as DeleteResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteResourcePolicy 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 *Comprehend) DeleteResourcePolicyWithContext(ctx aws.Context, input *DeleteResourcePolicyInput, opts ...request.Option) (*DeleteResourcePolicyOutput, error) { + req, out := c.DeleteResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeDocumentClassificationJob = "DescribeDocumentClassificationJob" // DescribeDocumentClassificationJobRequest generates a "aws/request.Request" representing the @@ -2102,6 +2189,93 @@ func (c *Comprehend) DescribePiiEntitiesDetectionJobWithContext(ctx aws.Context, return out, req.Send() } +const opDescribeResourcePolicy = "DescribeResourcePolicy" + +// DescribeResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DescribeResourcePolicy 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 DescribeResourcePolicy for more information on using the DescribeResourcePolicy +// 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 DescribeResourcePolicyRequest method. +// req, resp := client.DescribeResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeResourcePolicy +func (c *Comprehend) DescribeResourcePolicyRequest(input *DescribeResourcePolicyInput) (req *request.Request, output *DescribeResourcePolicyOutput) { + op := &request.Operation{ + Name: opDescribeResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeResourcePolicyInput{} + } + + output = &DescribeResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeResourcePolicy API operation for Amazon Comprehend. +// +// Gets the details of a resource-based policy that is attached to a custom +// model, including the JSON body of the policy. +// +// 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 Comprehend's +// API operation DescribeResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InvalidRequestException +// The request is invalid. +// +// * ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// * InternalServerException +// An internal server error occurred. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/DescribeResourcePolicy +func (c *Comprehend) DescribeResourcePolicy(input *DescribeResourcePolicyInput) (*DescribeResourcePolicyOutput, error) { + req, out := c.DescribeResourcePolicyRequest(input) + return out, req.Send() +} + +// DescribeResourcePolicyWithContext is the same as DescribeResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeResourcePolicy 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 *Comprehend) DescribeResourcePolicyWithContext(ctx aws.Context, input *DescribeResourcePolicyInput, opts ...request.Option) (*DescribeResourcePolicyOutput, error) { + req, out := c.DescribeResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeSentimentDetectionJob = "DescribeSentimentDetectionJob" // DescribeSentimentDetectionJobRequest generates a "aws/request.Request" representing the @@ -2825,6 +2999,123 @@ func (c *Comprehend) DetectSyntaxWithContext(ctx aws.Context, input *DetectSynta return out, req.Send() } +const opImportModel = "ImportModel" + +// ImportModelRequest generates a "aws/request.Request" representing the +// client's request for the ImportModel 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 ImportModel for more information on using the ImportModel +// 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 ImportModelRequest method. +// req, resp := client.ImportModelRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ImportModel +func (c *Comprehend) ImportModelRequest(input *ImportModelInput) (req *request.Request, output *ImportModelOutput) { + op := &request.Operation{ + Name: opImportModel, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ImportModelInput{} + } + + output = &ImportModelOutput{} + req = c.newRequest(op, input, output) + return +} + +// ImportModel API operation for Amazon Comprehend. +// +// Creates a new custom model that replicates a source custom model that you +// import. The source model can be in your AWS account or another one. +// +// If the source model is in another AWS account, then it must have a resource-based +// policy that authorizes you to import it. +// +// The source model must be in the same AWS region that you're using when you +// import. You can't import a model that's in a different 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 Amazon Comprehend's +// API operation ImportModel for usage and error information. +// +// Returned Error Types: +// * InvalidRequestException +// The request is invalid. +// +// * ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// * ResourceInUseException +// The specified resource name is already in use. Use a different name and try +// your request again. +// +// * ResourceUnavailableException +// The specified resource is not available. Check the resource and try your +// request again. +// +// * TooManyTagsException +// The request contains more tags than can be associated with a resource (50 +// tags per resource). The maximum number of tags includes both existing tags +// and those included in your current request. +// +// * TooManyRequestsException +// The number of requests exceeds the limit. Resubmit your request later. +// +// * ResourceLimitExceededException +// The maximum number of resources per account has been exceeded. Review the +// resources, and then try your request again. +// +// * KmsKeyValidationException +// The KMS customer managed key (CMK) entered cannot be validated. Verify the +// key and re-enter it. +// +// * InternalServerException +// An internal server error occurred. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/ImportModel +func (c *Comprehend) ImportModel(input *ImportModelInput) (*ImportModelOutput, error) { + req, out := c.ImportModelRequest(input) + return out, req.Send() +} + +// ImportModelWithContext is the same as ImportModel with the addition of +// the ability to pass a context and additional request options. +// +// See ImportModel 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 *Comprehend) ImportModelWithContext(ctx aws.Context, input *ImportModelInput, opts ...request.Option) (*ImportModelOutput, error) { + req, out := c.ImportModelRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListDocumentClassificationJobs = "ListDocumentClassificationJobs" // ListDocumentClassificationJobsRequest generates a "aws/request.Request" representing the @@ -4691,6 +4982,94 @@ func (c *Comprehend) ListTopicsDetectionJobsPagesWithContext(ctx aws.Context, in return p.Err() } +const opPutResourcePolicy = "PutResourcePolicy" + +// PutResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutResourcePolicy 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 PutResourcePolicy for more information on using the PutResourcePolicy +// 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 PutResourcePolicyRequest method. +// req, resp := client.PutResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/PutResourcePolicy +func (c *Comprehend) PutResourcePolicyRequest(input *PutResourcePolicyInput) (req *request.Request, output *PutResourcePolicyOutput) { + op := &request.Operation{ + Name: opPutResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutResourcePolicyInput{} + } + + output = &PutResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutResourcePolicy API operation for Amazon Comprehend. +// +// Attaches a resource-based policy to a custom model. You can use this policy +// to authorize an entity in another AWS account to import the custom model, +// which replicates it in Amazon Comprehend in their account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Comprehend's +// API operation PutResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InvalidRequestException +// The request is invalid. +// +// * ResourceNotFoundException +// The specified resource ARN was not found. Check the ARN and try your request +// again. +// +// * InternalServerException +// An internal server error occurred. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/comprehend-2017-11-27/PutResourcePolicy +func (c *Comprehend) PutResourcePolicy(input *PutResourcePolicyInput) (*PutResourcePolicyOutput, error) { + req, out := c.PutResourcePolicyRequest(input) + return out, req.Send() +} + +// PutResourcePolicyWithContext is the same as PutResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutResourcePolicy 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 *Comprehend) PutResourcePolicyWithContext(ctx aws.Context, input *PutResourcePolicyInput, opts ...request.Option) (*PutResourcePolicyOutput, error) { + req, out := c.PutResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opStartDocumentClassificationJob = "StartDocumentClassificationJob" // StartDocumentClassificationJobRequest generates a "aws/request.Request" representing the @@ -8052,6 +8431,23 @@ type CreateDocumentClassifierInput struct { // * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" ModelKmsKeyId *string `type:"string"` + // The resource-based policy to attach to your custom document classifier model. + // You can use this policy to allow another AWS account to import your custom + // model. + // + // Provide your policy as a JSON body that you enter as a UTF-8 encoded string + // without line breaks. To provide valid JSON, enclose the attribute names and + // values in double quotes. If the JSON body is also enclosed in double quotes, + // then you must escape the double quotes that are inside the policy: + // + // "{\"attribute\": \"value\", \"attribute\": [\"value\"]}" + // + // To avoid escaping quotes, you can use single quotes to enclose the policy + // and double quotes to enclose the JSON names and values: + // + // '{"attribute": "value", "attribute": ["value"]}' + ModelPolicy *string `min:"1" type:"string"` + // Enables the addition of output results configuration parameters for custom // classifier jobs. OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"` @@ -8123,6 +8519,9 @@ func (s *CreateDocumentClassifierInput) Validate() error { if s.LanguageCode == nil { invalidParams.Add(request.NewErrParamRequired("LanguageCode")) } + if s.ModelPolicy != nil && len(*s.ModelPolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelPolicy", 1)) + } if s.InputDataConfig != nil { if err := s.InputDataConfig.Validate(); err != nil { invalidParams.AddNested("InputDataConfig", err.(request.ErrInvalidParams)) @@ -8192,6 +8591,12 @@ func (s *CreateDocumentClassifierInput) SetModelKmsKeyId(v string) *CreateDocume return s } +// SetModelPolicy sets the ModelPolicy field's value. +func (s *CreateDocumentClassifierInput) SetModelPolicy(v string) *CreateDocumentClassifierInput { + s.ModelPolicy = &v + return s +} + // SetOutputDataConfig sets the OutputDataConfig field's value. func (s *CreateDocumentClassifierInput) SetOutputDataConfig(v *DocumentClassifierOutputDataConfig) *CreateDocumentClassifierInput { s.OutputDataConfig = v @@ -8449,6 +8854,23 @@ type CreateEntityRecognizerInput struct { // * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" ModelKmsKeyId *string `type:"string"` + // The JSON resource-based policy to attach to your custom entity recognizer + // model. You can use this policy to allow another AWS account to import your + // custom model. + // + // Provide your JSON as a UTF-8 encoded string without line breaks. To provide + // valid JSON for your policy, enclose the attribute names and values in double + // quotes. If the JSON body is also enclosed in double quotes, then you must + // escape the double quotes that are inside the policy: + // + // "{\"attribute\": \"value\", \"attribute\": [\"value\"]}" + // + // To avoid escaping quotes, you can use single quotes to enclose the policy + // and double quotes to enclose the JSON names and values: + // + // '{"attribute": "value", "attribute": ["value"]}' + ModelPolicy *string `min:"1" type:"string"` + // The name given to the newly created recognizer. Recognizer names can be a // maximum of 256 characters. Alphanumeric characters, hyphens (-) and underscores // (_) are allowed. The name must be unique in the account/region. @@ -8520,6 +8942,9 @@ func (s *CreateEntityRecognizerInput) Validate() error { if s.LanguageCode == nil { invalidParams.Add(request.NewErrParamRequired("LanguageCode")) } + if s.ModelPolicy != nil && len(*s.ModelPolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ModelPolicy", 1)) + } if s.RecognizerName == nil { invalidParams.Add(request.NewErrParamRequired("RecognizerName")) } @@ -8580,6 +9005,12 @@ func (s *CreateEntityRecognizerInput) SetModelKmsKeyId(v string) *CreateEntityRe return s } +// SetModelPolicy sets the ModelPolicy field's value. +func (s *CreateEntityRecognizerInput) SetModelPolicy(v string) *CreateEntityRecognizerInput { + s.ModelPolicy = &v + return s +} + // SetRecognizerName sets the RecognizerName field's value. func (s *CreateEntityRecognizerInput) SetRecognizerName(v string) *CreateEntityRecognizerInput { s.RecognizerName = &v @@ -8845,6 +9276,84 @@ func (s DeleteEntityRecognizerOutput) GoString() string { return s.String() } +type DeleteResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The revision ID of the policy to delete. + PolicyRevisionId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the custom model version that has the policy + // to delete. + // + // ResourceArn is a required field + ResourceArn *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 DeleteResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *DeleteResourcePolicyInput) SetPolicyRevisionId(v string) *DeleteResourcePolicyInput { + s.PolicyRevisionId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *DeleteResourcePolicyInput) SetResourceArn(v string) *DeleteResourcePolicyInput { + s.ResourceArn = &v + return s +} + +type DeleteResourcePolicyOutput 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 DeleteResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyOutput) GoString() string { + return s.String() +} + type DescribeDocumentClassificationJobInput struct { _ struct{} `type:"structure"` @@ -9476,24 +9985,104 @@ func (s DescribeKeyPhrasesDetectionJobOutput) 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 DescribeKeyPhrasesDetectionJobOutput) GoString() string { +func (s DescribeKeyPhrasesDetectionJobOutput) GoString() string { + return s.String() +} + +// SetKeyPhrasesDetectionJobProperties sets the KeyPhrasesDetectionJobProperties field's value. +func (s *DescribeKeyPhrasesDetectionJobOutput) SetKeyPhrasesDetectionJobProperties(v *KeyPhrasesDetectionJobProperties) *DescribeKeyPhrasesDetectionJobOutput { + s.KeyPhrasesDetectionJobProperties = v + return s +} + +type DescribePiiEntitiesDetectionJobInput struct { + _ struct{} `type:"structure"` + + // The identifier that Amazon Comprehend generated for the job. The operation + // returns this identifier in its response. + // + // JobId is a required field + JobId *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 DescribePiiEntitiesDetectionJobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribePiiEntitiesDetectionJobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribePiiEntitiesDetectionJobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribePiiEntitiesDetectionJobInput"} + if s.JobId == nil { + invalidParams.Add(request.NewErrParamRequired("JobId")) + } + if s.JobId != nil && len(*s.JobId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetJobId sets the JobId field's value. +func (s *DescribePiiEntitiesDetectionJobInput) SetJobId(v string) *DescribePiiEntitiesDetectionJobInput { + s.JobId = &v + return s +} + +type DescribePiiEntitiesDetectionJobOutput struct { + _ struct{} `type:"structure"` + + // Provides information about a PII entities detection job. + PiiEntitiesDetectionJobProperties *PiiEntitiesDetectionJobProperties `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 DescribePiiEntitiesDetectionJobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribePiiEntitiesDetectionJobOutput) GoString() string { return s.String() } -// SetKeyPhrasesDetectionJobProperties sets the KeyPhrasesDetectionJobProperties field's value. -func (s *DescribeKeyPhrasesDetectionJobOutput) SetKeyPhrasesDetectionJobProperties(v *KeyPhrasesDetectionJobProperties) *DescribeKeyPhrasesDetectionJobOutput { - s.KeyPhrasesDetectionJobProperties = v +// SetPiiEntitiesDetectionJobProperties sets the PiiEntitiesDetectionJobProperties field's value. +func (s *DescribePiiEntitiesDetectionJobOutput) SetPiiEntitiesDetectionJobProperties(v *PiiEntitiesDetectionJobProperties) *DescribePiiEntitiesDetectionJobOutput { + s.PiiEntitiesDetectionJobProperties = v return s } -type DescribePiiEntitiesDetectionJobInput struct { +type DescribeResourcePolicyInput struct { _ struct{} `type:"structure"` - // The identifier that Amazon Comprehend generated for the job. The operation - // returns this identifier in its response. + // The Amazon Resource Name (ARN) of the policy to describe. // - // JobId is a required field - JobId *string `min:"1" type:"string" required:"true"` + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` } // String returns the string representation. @@ -9501,7 +10090,7 @@ type DescribePiiEntitiesDetectionJobInput 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 DescribePiiEntitiesDetectionJobInput) String() string { +func (s DescribeResourcePolicyInput) String() string { return awsutil.Prettify(s) } @@ -9510,18 +10099,15 @@ func (s DescribePiiEntitiesDetectionJobInput) 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 DescribePiiEntitiesDetectionJobInput) GoString() string { +func (s DescribeResourcePolicyInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DescribePiiEntitiesDetectionJobInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DescribePiiEntitiesDetectionJobInput"} - if s.JobId == nil { - invalidParams.Add(request.NewErrParamRequired("JobId")) - } - if s.JobId != nil && len(*s.JobId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("JobId", 1)) +func (s *DescribeResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { @@ -9530,17 +10116,27 @@ func (s *DescribePiiEntitiesDetectionJobInput) Validate() error { return nil } -// SetJobId sets the JobId field's value. -func (s *DescribePiiEntitiesDetectionJobInput) SetJobId(v string) *DescribePiiEntitiesDetectionJobInput { - s.JobId = &v +// SetResourceArn sets the ResourceArn field's value. +func (s *DescribeResourcePolicyInput) SetResourceArn(v string) *DescribeResourcePolicyInput { + s.ResourceArn = &v return s } -type DescribePiiEntitiesDetectionJobOutput struct { +type DescribeResourcePolicyOutput struct { _ struct{} `type:"structure"` - // Provides information about a PII entities detection job. - PiiEntitiesDetectionJobProperties *PiiEntitiesDetectionJobProperties `type:"structure"` + // The time at which the policy was created. + CreationTime *time.Time `type:"timestamp"` + + // The time at which the policy was last modified. + LastModifiedTime *time.Time `type:"timestamp"` + + // The revision ID of the policy. Each time you modify a policy, Amazon Comprehend + // assigns a new revision ID, and it deletes the prior version of the policy. + PolicyRevisionId *string `type:"string"` + + // The JSON body of the resource-based policy. + ResourcePolicy *string `min:"1" type:"string"` } // String returns the string representation. @@ -9548,7 +10144,7 @@ type DescribePiiEntitiesDetectionJobOutput 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 DescribePiiEntitiesDetectionJobOutput) String() string { +func (s DescribeResourcePolicyOutput) String() string { return awsutil.Prettify(s) } @@ -9557,13 +10153,31 @@ func (s DescribePiiEntitiesDetectionJobOutput) 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 DescribePiiEntitiesDetectionJobOutput) GoString() string { +func (s DescribeResourcePolicyOutput) GoString() string { return s.String() } -// SetPiiEntitiesDetectionJobProperties sets the PiiEntitiesDetectionJobProperties field's value. -func (s *DescribePiiEntitiesDetectionJobOutput) SetPiiEntitiesDetectionJobProperties(v *PiiEntitiesDetectionJobProperties) *DescribePiiEntitiesDetectionJobOutput { - s.PiiEntitiesDetectionJobProperties = v +// SetCreationTime sets the CreationTime field's value. +func (s *DescribeResourcePolicyOutput) SetCreationTime(v time.Time) *DescribeResourcePolicyOutput { + s.CreationTime = &v + return s +} + +// SetLastModifiedTime sets the LastModifiedTime field's value. +func (s *DescribeResourcePolicyOutput) SetLastModifiedTime(v time.Time) *DescribeResourcePolicyOutput { + s.LastModifiedTime = &v + return s +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *DescribeResourcePolicyOutput) SetPolicyRevisionId(v string) *DescribeResourcePolicyOutput { + s.PolicyRevisionId = &v + return s +} + +// SetResourcePolicy sets the ResourcePolicy field's value. +func (s *DescribeResourcePolicyOutput) SetResourcePolicy(v string) *DescribeResourcePolicyOutput { + s.ResourcePolicy = &v return s } @@ -10937,6 +11551,11 @@ type DocumentClassifierProperties struct { // Provides output results configuration parameters for custom classifier jobs. OutputDataConfig *DocumentClassifierOutputDataConfig `type:"structure"` + // The Amazon Resource Name (ARN) of the source model. This model was imported + // from a different AWS account to create the document classifier model in your + // AWS account. + SourceModelArn *string `type:"string"` + // The status of the document classifier. If the status is TRAINED the classifier // is ready to use. If the status is FAILED you can see additional information // about why the classifier wasn't trained in the Message field. @@ -11051,6 +11670,12 @@ func (s *DocumentClassifierProperties) SetOutputDataConfig(v *DocumentClassifier return s } +// SetSourceModelArn sets the SourceModelArn field's value. +func (s *DocumentClassifierProperties) SetSourceModelArn(v string) *DocumentClassifierProperties { + s.SourceModelArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *DocumentClassifierProperties) SetStatus(v string) *DocumentClassifierProperties { s.Status = &v @@ -12733,6 +13358,11 @@ type EntityRecognizerProperties struct { // String and GoString methods. RecognizerMetadata *EntityRecognizerMetadata `type:"structure" sensitive:"true"` + // The Amazon Resource Name (ARN) of the source model. This model was imported + // from a different AWS account to create the entity recognizer model in your + // AWS account. + SourceModelArn *string `type:"string"` + // Provides the status of the entity recognizer. Status *string `type:"string" enum:"ModelStatus"` @@ -12830,6 +13460,12 @@ func (s *EntityRecognizerProperties) SetRecognizerMetadata(v *EntityRecognizerMe return s } +// SetSourceModelArn sets the SourceModelArn field's value. +func (s *EntityRecognizerProperties) SetSourceModelArn(v string) *EntityRecognizerProperties { + s.SourceModelArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *EntityRecognizerProperties) SetStatus(v string) *EntityRecognizerProperties { s.Status = &v @@ -13270,6 +13906,156 @@ func (s *EventsDetectionJobProperties) SetTargetEventTypes(v []*string) *EventsD return s } +type ImportModelInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the AWS Identity and Management (IAM) role + // that allows Amazon Comprehend to use Amazon Key Management Service (KMS) + // to encrypt or decrypt the custom model. + DataAccessRoleArn *string `min:"20" type:"string"` + + // ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses + // to encrypt trained custom models. The ModelKmsKeyId can be either of the + // following formats: + // + // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab" + // + // * Amazon Resource Name (ARN) of a KMS Key: "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" + ModelKmsKeyId *string `type:"string"` + + // The name to assign to the custom model that is created in Amazon Comprehend + // by this import. + ModelName *string `type:"string"` + + // The Amazon Resource Name (ARN) of the custom model to import. + // + // SourceModelArn is a required field + SourceModelArn *string `type:"string" required:"true"` + + // Tags to be associated with the custom model that is created by this import. + // A tag is a key-value pair that adds as a metadata to a resource used by Amazon + // Comprehend. For example, a tag with "Sales" as the key might be added to + // a resource to indicate its use by the sales department. + Tags []*Tag `type:"list"` + + // The version name given to the custom model that is created by this import. + // Version names can have a maximum of 256 characters. Alphanumeric characters, + // hyphens (-) and underscores (_) are allowed. The version name must be unique + // among all models with the same classifier name in the account/AWS Region. + VersionName *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 ImportModelInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportModelInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ImportModelInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ImportModelInput"} + if s.DataAccessRoleArn != nil && len(*s.DataAccessRoleArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DataAccessRoleArn", 20)) + } + if s.SourceModelArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceModelArn")) + } + 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 +} + +// SetDataAccessRoleArn sets the DataAccessRoleArn field's value. +func (s *ImportModelInput) SetDataAccessRoleArn(v string) *ImportModelInput { + s.DataAccessRoleArn = &v + return s +} + +// SetModelKmsKeyId sets the ModelKmsKeyId field's value. +func (s *ImportModelInput) SetModelKmsKeyId(v string) *ImportModelInput { + s.ModelKmsKeyId = &v + return s +} + +// SetModelName sets the ModelName field's value. +func (s *ImportModelInput) SetModelName(v string) *ImportModelInput { + s.ModelName = &v + return s +} + +// SetSourceModelArn sets the SourceModelArn field's value. +func (s *ImportModelInput) SetSourceModelArn(v string) *ImportModelInput { + s.SourceModelArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *ImportModelInput) SetTags(v []*Tag) *ImportModelInput { + s.Tags = v + return s +} + +// SetVersionName sets the VersionName field's value. +func (s *ImportModelInput) SetVersionName(v string) *ImportModelInput { + s.VersionName = &v + return s +} + +type ImportModelOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the custom model being imported. + ModelArn *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 ImportModelOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ImportModelOutput) GoString() string { + return s.String() +} + +// SetModelArn sets the ModelArn field's value. +func (s *ImportModelOutput) SetModelArn(v string) *ImportModelOutput { + s.ModelArn = &v + return s +} + // The input properties for an inference job. type InputDataConfig struct { _ struct{} `type:"structure"` @@ -15951,6 +16737,123 @@ func (s *PiiOutputDataConfig) SetS3Uri(v string) *PiiOutputDataConfig { return s } +type PutResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The revision ID that Amazon Comprehend assigned to the policy that you are + // updating. If you are creating a new policy that has no prior version, don't + // use this parameter. Amazon Comprehend creates the revision ID for you. + PolicyRevisionId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the custom model to attach the policy to. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // The JSON resource-based policy to attach to your custom model. Provide your + // JSON as a UTF-8 encoded string without line breaks. To provide valid JSON + // for your policy, enclose the attribute names and values in double quotes. + // If the JSON body is also enclosed in double quotes, then you must escape + // the double quotes that are inside the policy: + // + // "{\"attribute\": \"value\", \"attribute\": [\"value\"]}" + // + // To avoid escaping quotes, you can use single quotes to enclose the policy + // and double quotes to enclose the JSON names and values: + // + // '{"attribute": "value", "attribute": ["value"]}' + // + // ResourcePolicy is a required field + ResourcePolicy *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 PutResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourcePolicy == nil { + invalidParams.Add(request.NewErrParamRequired("ResourcePolicy")) + } + if s.ResourcePolicy != nil && len(*s.ResourcePolicy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourcePolicy", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *PutResourcePolicyInput) SetPolicyRevisionId(v string) *PutResourcePolicyInput { + s.PolicyRevisionId = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *PutResourcePolicyInput) SetResourceArn(v string) *PutResourcePolicyInput { + s.ResourceArn = &v + return s +} + +// SetResourcePolicy sets the ResourcePolicy field's value. +func (s *PutResourcePolicyInput) SetResourcePolicy(v string) *PutResourcePolicyInput { + s.ResourcePolicy = &v + return s +} + +type PutResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The revision ID of the policy. Each time you modify a policy, Amazon Comprehend + // assigns a new revision ID, and it deletes the prior version of the policy. + PolicyRevisionId *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 PutResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *PutResourcePolicyOutput) SetPolicyRevisionId(v string) *PutResourcePolicyOutput { + s.PolicyRevisionId = &v + return s +} + // Provides configuration parameters for PII entity redaction. type RedactionConfig struct { _ struct{} `type:"structure"` diff --git a/service/comprehend/comprehendiface/interface.go b/service/comprehend/comprehendiface/interface.go index 511267ebf14..c4856c48ac7 100644 --- a/service/comprehend/comprehendiface/interface.go +++ b/service/comprehend/comprehendiface/interface.go @@ -112,6 +112,10 @@ type ComprehendAPI interface { DeleteEntityRecognizerWithContext(aws.Context, *comprehend.DeleteEntityRecognizerInput, ...request.Option) (*comprehend.DeleteEntityRecognizerOutput, error) DeleteEntityRecognizerRequest(*comprehend.DeleteEntityRecognizerInput) (*request.Request, *comprehend.DeleteEntityRecognizerOutput) + DeleteResourcePolicy(*comprehend.DeleteResourcePolicyInput) (*comprehend.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyWithContext(aws.Context, *comprehend.DeleteResourcePolicyInput, ...request.Option) (*comprehend.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyRequest(*comprehend.DeleteResourcePolicyInput) (*request.Request, *comprehend.DeleteResourcePolicyOutput) + DescribeDocumentClassificationJob(*comprehend.DescribeDocumentClassificationJobInput) (*comprehend.DescribeDocumentClassificationJobOutput, error) DescribeDocumentClassificationJobWithContext(aws.Context, *comprehend.DescribeDocumentClassificationJobInput, ...request.Option) (*comprehend.DescribeDocumentClassificationJobOutput, error) DescribeDocumentClassificationJobRequest(*comprehend.DescribeDocumentClassificationJobInput) (*request.Request, *comprehend.DescribeDocumentClassificationJobOutput) @@ -148,6 +152,10 @@ type ComprehendAPI interface { DescribePiiEntitiesDetectionJobWithContext(aws.Context, *comprehend.DescribePiiEntitiesDetectionJobInput, ...request.Option) (*comprehend.DescribePiiEntitiesDetectionJobOutput, error) DescribePiiEntitiesDetectionJobRequest(*comprehend.DescribePiiEntitiesDetectionJobInput) (*request.Request, *comprehend.DescribePiiEntitiesDetectionJobOutput) + DescribeResourcePolicy(*comprehend.DescribeResourcePolicyInput) (*comprehend.DescribeResourcePolicyOutput, error) + DescribeResourcePolicyWithContext(aws.Context, *comprehend.DescribeResourcePolicyInput, ...request.Option) (*comprehend.DescribeResourcePolicyOutput, error) + DescribeResourcePolicyRequest(*comprehend.DescribeResourcePolicyInput) (*request.Request, *comprehend.DescribeResourcePolicyOutput) + DescribeSentimentDetectionJob(*comprehend.DescribeSentimentDetectionJobInput) (*comprehend.DescribeSentimentDetectionJobOutput, error) DescribeSentimentDetectionJobWithContext(aws.Context, *comprehend.DescribeSentimentDetectionJobInput, ...request.Option) (*comprehend.DescribeSentimentDetectionJobOutput, error) DescribeSentimentDetectionJobRequest(*comprehend.DescribeSentimentDetectionJobInput) (*request.Request, *comprehend.DescribeSentimentDetectionJobOutput) @@ -180,6 +188,10 @@ type ComprehendAPI interface { DetectSyntaxWithContext(aws.Context, *comprehend.DetectSyntaxInput, ...request.Option) (*comprehend.DetectSyntaxOutput, error) DetectSyntaxRequest(*comprehend.DetectSyntaxInput) (*request.Request, *comprehend.DetectSyntaxOutput) + ImportModel(*comprehend.ImportModelInput) (*comprehend.ImportModelOutput, error) + ImportModelWithContext(aws.Context, *comprehend.ImportModelInput, ...request.Option) (*comprehend.ImportModelOutput, error) + ImportModelRequest(*comprehend.ImportModelInput) (*request.Request, *comprehend.ImportModelOutput) + ListDocumentClassificationJobs(*comprehend.ListDocumentClassificationJobsInput) (*comprehend.ListDocumentClassificationJobsOutput, error) ListDocumentClassificationJobsWithContext(aws.Context, *comprehend.ListDocumentClassificationJobsInput, ...request.Option) (*comprehend.ListDocumentClassificationJobsOutput, error) ListDocumentClassificationJobsRequest(*comprehend.ListDocumentClassificationJobsInput) (*request.Request, *comprehend.ListDocumentClassificationJobsOutput) @@ -269,6 +281,10 @@ type ComprehendAPI interface { ListTopicsDetectionJobsPages(*comprehend.ListTopicsDetectionJobsInput, func(*comprehend.ListTopicsDetectionJobsOutput, bool) bool) error ListTopicsDetectionJobsPagesWithContext(aws.Context, *comprehend.ListTopicsDetectionJobsInput, func(*comprehend.ListTopicsDetectionJobsOutput, bool) bool, ...request.Option) error + PutResourcePolicy(*comprehend.PutResourcePolicyInput) (*comprehend.PutResourcePolicyOutput, error) + PutResourcePolicyWithContext(aws.Context, *comprehend.PutResourcePolicyInput, ...request.Option) (*comprehend.PutResourcePolicyOutput, error) + PutResourcePolicyRequest(*comprehend.PutResourcePolicyInput) (*request.Request, *comprehend.PutResourcePolicyOutput) + StartDocumentClassificationJob(*comprehend.StartDocumentClassificationJobInput) (*comprehend.StartDocumentClassificationJobOutput, error) StartDocumentClassificationJobWithContext(aws.Context, *comprehend.StartDocumentClassificationJobInput, ...request.Option) (*comprehend.StartDocumentClassificationJobOutput, error) StartDocumentClassificationJobRequest(*comprehend.StartDocumentClassificationJobInput) (*request.Request, *comprehend.StartDocumentClassificationJobOutput) diff --git a/service/costexplorer/api.go b/service/costexplorer/api.go index 882a119da2e..0397c20df9d 100644 --- a/service/costexplorer/api.go +++ b/service/costexplorer/api.go @@ -1791,10 +1791,6 @@ func (c *CostExplorer) GetSavingsPlansCoverageRequest(input *GetSavingsPlansCove // // * INSTANCE_FAMILY // -// GetSavingsPlansCoverage doesn't support filtering by tags. GetSavingsPlansCoverage -// also doesn't support the OR operator between filter dimensions. For the full -// request syntax with supported parameters, see Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansCoverage.html#API_GetSavingsPlansCoverage_Examples). -// // To determine valid values for a dimension, use the GetDimensionValues operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2022,10 +2018,6 @@ func (c *CostExplorer) GetSavingsPlansUtilizationRequest(input *GetSavingsPlansU // // You cannot group by any dimension values for GetSavingsPlansUtilization. // -// GetSavingsPlansUtilization doesn't support filtering by tags. GetSavingsPlansUtilization -// also doesn't support the OR operator between filter dimensions. For the full -// request syntax with supported parameters, see Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansUtilization.html#API_GetSavingsPlansUtilization_Examples). -// // 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. @@ -2122,10 +2114,6 @@ func (c *CostExplorer) GetSavingsPlansUtilizationDetailsRequest(input *GetSaving // // GetSavingsPlanUtilizationDetails internally groups data by SavingsPlansArn. // -// GetSavingsPlansUtilizationDetails doesn't support filtering by tags. GetSavingsPlansUtilizationDetails -// also doesn't support the OR operator between filter dimensions. For the full -// request syntax with supported parameters, see Examples (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetSavingsPlansUtilizationDetails.html#API_GetSavingsPlansUtilizationDetails_Examples). -// // 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. @@ -6524,11 +6512,11 @@ type GetCostAndUsageInput struct { // to define any combination of dimension filters. For more information, see // Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html). // - // The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions - // for Dimensions are EQUALS and CASE_SENSITIVE. - // // Valid values for MatchOptions for CostCategories and Tags are EQUALS, ABSENT, // and CASE_SENSITIVE. + // + // The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions + // for Dimensions are EQUALS and CASE_SENSITIVE. Filter *Expression `type:"structure"` // Sets the Amazon Web Services cost granularity to MONTHLY or DAILY, or HOURLY. @@ -6542,8 +6530,8 @@ type GetCostAndUsageInput struct { // either dimensions, tag keys, cost categories, or any two group by types. // // Valid values for the DIMENSION type are AZ, INSTANCE_TYPE, LEGAL_ENTITY_NAME, - // LINKED_ACCOUNT, OPERATION, PLATFORM, PURCHASE_TYPE, SERVICE, TENANCY, RECORD_TYPE, - // and USAGE_TYPE. + // INVOICING_ENTITY, LINKED_ACCOUNT, OPERATION, PLATFORM, PURCHASE_TYPE, SERVICE, + // TENANCY, RECORD_TYPE, and USAGE_TYPE. // // When you group by the TAG type and include a valid tag key, you get all tag // values, including empty strings. @@ -6741,12 +6729,12 @@ type GetCostAndUsageWithResourcesInput struct { // by or filter by a ResourceId. It requires the Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // "SERVICE = Amazon Elastic Compute Cloud - Compute" in the filter. // - // The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions - // for Dimensions are EQUALS and CASE_SENSITIVE. - // // Valid values for MatchOptions for CostCategories and Tags are EQUALS, ABSENT, // and CASE_SENSITIVE. // + // The default values are EQUALS and CASE_SENSITIVE. Valid values for MatchOptions + // for Dimensions are EQUALS and CASE_SENSITIVE. + // // Filter is a required field Filter *Expression `type:"structure" required:"true"` @@ -7437,11 +7425,32 @@ type GetDimensionValuesInput struct { // // * AZ - The Availability Zone. An example is us-east-1a. // + // * BILLING_ENTITY - The Amazon Web Services seller that your account is + // with. Possible values are the following: - Amazon Web Services(Amazon + // Web Services): The entity that sells Amazon Web Services services. - AISPL + // (Amazon Internet Services Pvt. Ltd.): The local Indian entity that is + // an acting reseller for Amazon Web Services services in India. - Amazon + // Web Services Marketplace: The entity that supports the sale of solutions + // built on Amazon Web Services by third-party software providers. + // + // * CACHE_ENGINE - The Amazon ElastiCache operating system. Examples are + // Windows or Linux. + // + // * DEPLOYMENT_OPTION - The scope of Amazon Relational Database Service + // deployments. Valid values are SingleAZ and MultiAZ. + // // * DATABASE_ENGINE - The Amazon Relational Database Service database. Examples // are Aurora or MySQL. // // * INSTANCE_TYPE - The type of Amazon EC2 instance. An example is m4.xlarge. // + // * INSTANCE_TYPE_FAMILY - A family of instance types optimized to fit different + // use cases. Examples are Compute Optimized (C4, C5, C6g, C7g etc.), Memory + // Optimization (R4, R5n, R5b, R6g etc). + // + // * INVOICING_ENTITY - The name of the entity issuing the Amazon Web Services + // invoice. + // // * LEGAL_ENTITY_NAME - The name of the organization that sells you Amazon // Web Services services, such as Amazon Web Services. // @@ -7460,8 +7469,17 @@ type GetDimensionValuesInput struct { // is related. Examples include On-Demand Instances and Standard Reserved // Instances. // + // * RESERVATION_ID - The unique identifier for an Amazon Web Services Reservation + // Instance. + // + // * SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans. + // + // * SAVINGS_PLANS_TYPE - Type of Savings Plans (EC2 Instance or Compute). + // // * SERVICE - The Amazon Web Services service such as Amazon DynamoDB. // + // * TENANCY - The tenancy of a resource. Examples are shared or dedicated. + // // * USAGE_TYPE - The type of usage. An example is DataTransfer-In-Bytes. // The response for the GetDimensionValues operation includes a unit attribute. // Examples include GB and Hrs. @@ -7524,11 +7542,11 @@ type GetDimensionValuesInput struct { // the full name of the member account. The value field contains the Amazon // Web Services ID of the member account. // - // * SAVINGS_PLAN_ARN - The unique identifier for your Savings Plan + // * SAVINGS_PLAN_ARN - The unique identifier for your Savings Plans. Context *string `type:"string" enum:"Context"` // The name of the dimension. Each Dimension is available for a different Context. - // For more information, see Context (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_GetDimensionValues.html#awscostmanagement-GetDimensionValues-request-Context). + // For more information, see Context. // // Dimension is a required field Dimension *string `type:"string" required:"true" enum:"Dimension"` @@ -7914,7 +7932,8 @@ type GetReservationCoverageInput struct { // // GetReservationCoverage uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. - // You can nest only one level deep. + // You can nest only one level deep. If there are multiple values for a dimension, + // they are OR'd together. // // If you don't provide a SERVICE filter, Cost Explorer defaults to EC2. // @@ -7942,6 +7961,8 @@ type GetReservationCoverageInput struct { // // * INSTANCE_TYPE // + // * INVOICING_ENTITY + // // * LINKED_ACCOUNT // // * OPERATING_SYSTEM @@ -8406,7 +8427,8 @@ type GetReservationUtilizationInput struct { // // GetReservationUtilization uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension, - // and nesting is supported up to only one level deep. + // and nesting is supported up to only one level deep. If there are multiple + // values for a dimension, they are OR'd together. Filter *Expression `type:"structure"` // If GroupBy is set, Granularity can't be set. If Granularity isn't set, the @@ -8842,8 +8864,9 @@ type GetSavingsPlansCoverageInput struct { // // GetSavingsPlansCoverage uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. + // If there are multiple values for a dimension, they are OR'd together. // - // Cost category is supported. Tags are not supported. + // Cost category is also supported. Filter *Expression `type:"structure"` // The granularity of the Amazon Web Services cost data for your Savings Plans. @@ -9255,8 +9278,6 @@ type GetSavingsPlansUtilizationDetailsInput struct { // // GetSavingsPlansUtilizationDetails uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. - // - // Filtering by tags isn't supported. Filter *Expression `type:"structure"` // The number of items to be returned in a response. The default is 20, with @@ -9467,8 +9488,6 @@ type GetSavingsPlansUtilizationInput struct { // // GetSavingsPlansUtilization uses the same Expression (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html) // object as the other operations, but only AND is supported among each dimension. - // - // Filtering by tags isn't supported. Filter *Expression `type:"structure"` // The granularity of the Amazon Web Services utillization data for your Savings @@ -14510,6 +14529,9 @@ const ( // DimensionLegalEntityName is a Dimension enum value DimensionLegalEntityName = "LEGAL_ENTITY_NAME" + // DimensionInvoicingEntity is a Dimension enum value + DimensionInvoicingEntity = "INVOICING_ENTITY" + // DimensionDeploymentOption is a Dimension enum value DimensionDeploymentOption = "DEPLOYMENT_OPTION" @@ -14571,6 +14593,7 @@ func Dimension_Values() []string { DimensionPlatform, DimensionSubscriptionId, DimensionLegalEntityName, + DimensionInvoicingEntity, DimensionDeploymentOption, DimensionDatabaseEngine, DimensionCacheEngine, diff --git a/service/dynamodb/api.go b/service/dynamodb/api.go index 017ed69e500..7794c60254c 100644 --- a/service/dynamodb/api.go +++ b/service/dynamodb/api.go @@ -401,9 +401,12 @@ func (c *DynamoDB) BatchWriteItemRequest(input *BatchWriteItemInput) (req *reque // BatchWriteItem API operation for Amazon DynamoDB. // // The BatchWriteItem operation puts or deletes multiple items in one or more -// tables. A single call to BatchWriteItem can write up to 16 MB of data, which -// can comprise as many as 25 put or delete requests. Individual items to be -// written can be as large as 400 KB. +// tables. A single call to BatchWriteItem can transmit up to 16MB of data over +// the network, consisting of up to 25 item put or delete operations. While +// individual items can be up to 400 KB once stored, it's important to note +// that an item's representation might be greater than 400KB while being sent +// in DynamoDB's JSON format for the API call. For more details on this distinction, +// see Naming Rules and Data Types (https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html). // // BatchWriteItem cannot update items. To update items, use the UpdateItem action. // @@ -6215,10 +6218,11 @@ func (c *DynamoDB) UpdateContributorInsightsRequest(input *UpdateContributorInsi // Updates the status for contributor insights for a specific table or index. // CloudWatch Contributor Insights for DynamoDB graphs display the partition // key and (if applicable) sort key of frequently accessed items and frequently -// throttled items in plaintext. If you require the use of AWS Key Management -// Service (KMS) to encrypt this table’s partition key and sort key data with -// an AWS managed key or customer managed key, you should not enable CloudWatch -// Contributor Insights for DynamoDB for this table. +// throttled items in plaintext. If you require the use of Amazon Web Services +// Key Management Service (KMS) to encrypt this table’s partition key and +// sort key data with an Amazon Web Services managed key or customer managed +// key, you should not enable CloudWatch Contributor Insights for DynamoDB for +// this 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 @@ -16824,8 +16828,6 @@ type PointInTimeRecoveryDescription struct { // The current state of point in time recovery: // - // * ENABLING - Point in time recovery is being enabled. - // // * ENABLED - Point in time recovery is enabled. // // * DISABLED - Point in time recovery is disabled. diff --git a/service/elasticache/api.go b/service/elasticache/api.go index 334a2c8e35a..fbe598cbce6 100644 --- a/service/elasticache/api.go +++ b/service/elasticache/api.go @@ -8871,7 +8871,7 @@ type CacheParameterGroup struct { // is compatible with. // // Valid values are: memcached1.4 | memcached1.5 | memcached1.6 | redis2.6 | - // redis2.8 | redis3.2 | redis4.0 | redis5.0 | redis6.0 | + // redis2.8 | redis3.2 | redis4.0 | redis5.0 | redis6.x | CacheParameterGroupFamily *string `type:"string"` // The name of the cache parameter group. @@ -9757,8 +9757,7 @@ type CreateCacheClusterInput struct { // Specifies the weekly time range during which maintenance on the cluster is // performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi - // (24H Clock UTC). The minimum maintenance window is a 60 minute period. Valid - // values for ddd are: + // (24H Clock UTC). The minimum maintenance window is a 60 minute period. PreferredMaintenanceWindow *string `type:"string"` // The outpost ARN in which the cache cluster is created. @@ -10058,7 +10057,7 @@ type CreateCacheParameterGroupInput struct { // can be used with. // // Valid values are: memcached1.4 | memcached1.5 | memcached1.6 | redis2.6 | - // redis2.8 | redis3.2 | redis4.0 | redis5.0 | redis6.0 | redis6.2 + // redis2.8 | redis3.2 | redis4.0 | redis5.0 | redis6.x // // CacheParameterGroupFamily is a required field CacheParameterGroupFamily *string `type:"string" required:"true"` diff --git a/service/elasticsearchservice/api.go b/service/elasticsearchservice/api.go index 8583236e9a2..11a2c1d21bb 100644 --- a/service/elasticsearchservice/api.go +++ b/service/elasticsearchservice/api.go @@ -1263,6 +1263,96 @@ func (c *ElasticsearchService) DescribeDomainAutoTunesPagesWithContext(ctx aws.C return p.Err() } +const opDescribeDomainChangeProgress = "DescribeDomainChangeProgress" + +// DescribeDomainChangeProgressRequest generates a "aws/request.Request" representing the +// client's request for the DescribeDomainChangeProgress 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 DescribeDomainChangeProgress for more information on using the DescribeDomainChangeProgress +// 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 DescribeDomainChangeProgressRequest method. +// req, resp := client.DescribeDomainChangeProgressRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *ElasticsearchService) DescribeDomainChangeProgressRequest(input *DescribeDomainChangeProgressInput) (req *request.Request, output *DescribeDomainChangeProgressOutput) { + op := &request.Operation{ + Name: opDescribeDomainChangeProgress, + HTTPMethod: "GET", + HTTPPath: "/2015-01-01/es/domain/{DomainName}/progress", + } + + if input == nil { + input = &DescribeDomainChangeProgressInput{} + } + + output = &DescribeDomainChangeProgressOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeDomainChangeProgress API operation for Amazon Elasticsearch Service. +// +// Returns information about the current blue/green deployment happening on +// a domain, including a change ID, status, and progress stages. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elasticsearch Service's +// API operation DescribeDomainChangeProgress for usage and error information. +// +// Returned Error Types: +// * BaseException +// An error occurred while processing the request. +// +// * InternalException +// The request processing has failed because of an unknown error, exception +// or failure (the failure is internal to the service) . Gives http status code +// of 500. +// +// * ResourceNotFoundException +// An exception for accessing or deleting a resource that does not exist. Gives +// http status code of 400. +// +// * ValidationException +// An exception for missing / invalid input fields. Gives http status code of +// 400. +// +func (c *ElasticsearchService) DescribeDomainChangeProgress(input *DescribeDomainChangeProgressInput) (*DescribeDomainChangeProgressOutput, error) { + req, out := c.DescribeDomainChangeProgressRequest(input) + return out, req.Send() +} + +// DescribeDomainChangeProgressWithContext is the same as DescribeDomainChangeProgress with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeDomainChangeProgress for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ElasticsearchService) DescribeDomainChangeProgressWithContext(ctx aws.Context, input *DescribeDomainChangeProgressInput, opts ...request.Option) (*DescribeDomainChangeProgressOutput, error) { + req, out := c.DescribeDomainChangeProgressRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDescribeElasticsearchDomain = "DescribeElasticsearchDomain" // DescribeElasticsearchDomainRequest generates a "aws/request.Request" representing the @@ -5666,6 +5756,198 @@ func (s *CancelElasticsearchServiceSoftwareUpdateOutput) SetServiceSoftwareOptio return s } +// Specifies change details of the domain configuration change. +type ChangeProgressDetails struct { + _ struct{} `type:"structure"` + + // The unique change identifier associated with a specific domain configuration + // change. + ChangeId *string `type:"string"` + + // Contains an optional message associated with the domain configuration change. + Message *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 ChangeProgressDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChangeProgressDetails) GoString() string { + return s.String() +} + +// SetChangeId sets the ChangeId field's value. +func (s *ChangeProgressDetails) SetChangeId(v string) *ChangeProgressDetails { + s.ChangeId = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *ChangeProgressDetails) SetMessage(v string) *ChangeProgressDetails { + s.Message = &v + return s +} + +// A progress stage details of a specific domain configuration change. +type ChangeProgressStage struct { + _ struct{} `type:"structure"` + + // The description of the progress stage. + Description *string `type:"string"` + + // The last updated timestamp of the progress stage. + LastUpdated *time.Time `type:"timestamp"` + + // The name of the specific progress stage. + Name *string `min:"1" type:"string"` + + // The overall status of a specific progress stage. + Status *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 ChangeProgressStage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChangeProgressStage) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *ChangeProgressStage) SetDescription(v string) *ChangeProgressStage { + s.Description = &v + return s +} + +// SetLastUpdated sets the LastUpdated field's value. +func (s *ChangeProgressStage) SetLastUpdated(v time.Time) *ChangeProgressStage { + s.LastUpdated = &v + return s +} + +// SetName sets the Name field's value. +func (s *ChangeProgressStage) SetName(v string) *ChangeProgressStage { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ChangeProgressStage) SetStatus(v string) *ChangeProgressStage { + s.Status = &v + return s +} + +// The progress details of a specific domain configuration change. +type ChangeProgressStatusDetails struct { + _ struct{} `type:"structure"` + + // The unique change identifier associated with a specific domain configuration + // change. + ChangeId *string `type:"string"` + + // The specific stages that the domain is going through to perform the configuration + // change. + ChangeProgressStages []*ChangeProgressStage `type:"list"` + + // The list of properties involved in the domain configuration change that are + // completed. + CompletedProperties []*string `type:"list"` + + // The list of properties involved in the domain configuration change that are + // still in pending. + PendingProperties []*string `type:"list"` + + // The time at which the configuration change is made on the domain. + StartTime *time.Time `type:"timestamp"` + + // The overall status of the domain configuration change. This field can take + // the following values: PENDING, PROCESSING, COMPLETED and FAILED + Status *string `type:"string" enum:"OverallChangeStatus"` + + // The total number of stages required for the configuration change. + TotalNumberOfStages *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 ChangeProgressStatusDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ChangeProgressStatusDetails) GoString() string { + return s.String() +} + +// SetChangeId sets the ChangeId field's value. +func (s *ChangeProgressStatusDetails) SetChangeId(v string) *ChangeProgressStatusDetails { + s.ChangeId = &v + return s +} + +// SetChangeProgressStages sets the ChangeProgressStages field's value. +func (s *ChangeProgressStatusDetails) SetChangeProgressStages(v []*ChangeProgressStage) *ChangeProgressStatusDetails { + s.ChangeProgressStages = v + return s +} + +// SetCompletedProperties sets the CompletedProperties field's value. +func (s *ChangeProgressStatusDetails) SetCompletedProperties(v []*string) *ChangeProgressStatusDetails { + s.CompletedProperties = v + return s +} + +// SetPendingProperties sets the PendingProperties field's value. +func (s *ChangeProgressStatusDetails) SetPendingProperties(v []*string) *ChangeProgressStatusDetails { + s.PendingProperties = v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ChangeProgressStatusDetails) SetStartTime(v time.Time) *ChangeProgressStatusDetails { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ChangeProgressStatusDetails) SetStatus(v string) *ChangeProgressStatusDetails { + s.Status = &v + return s +} + +// SetTotalNumberOfStages sets the TotalNumberOfStages field's value. +func (s *ChangeProgressStatusDetails) SetTotalNumberOfStages(v int64) *ChangeProgressStatusDetails { + s.TotalNumberOfStages = &v + return s +} + // Options to specify the Cognito user and identity pools for Kibana authentication. // For more information, see Amazon Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). type CognitoOptions struct { @@ -6994,6 +7276,103 @@ func (s *DescribeDomainAutoTunesOutput) SetNextToken(v string) *DescribeDomainAu return s } +// Container for the parameters to the DescribeDomainChangeProgress operation. +// Specifies the domain name and optional change specific identity for which +// you want progress information. +type DescribeDomainChangeProgressInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The specific change ID for which you want to get progress information. This + // is an optional parameter. If omitted, the service returns information about + // the most recent configuration change. + ChangeId *string `location:"querystring" locationName:"changeid" type:"string"` + + // The domain you want to get the progress information about. + // + // DomainName is a required field + DomainName *string `location:"uri" locationName:"DomainName" min:"3" 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 DescribeDomainChangeProgressInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDomainChangeProgressInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeDomainChangeProgressInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeDomainChangeProgressInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + if s.DomainName != nil && len(*s.DomainName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DomainName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetChangeId sets the ChangeId field's value. +func (s *DescribeDomainChangeProgressInput) SetChangeId(v string) *DescribeDomainChangeProgressInput { + s.ChangeId = &v + return s +} + +// SetDomainName sets the DomainName field's value. +func (s *DescribeDomainChangeProgressInput) SetDomainName(v string) *DescribeDomainChangeProgressInput { + s.DomainName = &v + return s +} + +// The result of a DescribeDomainChangeProgress request. Contains the progress +// information of the requested domain change. +type DescribeDomainChangeProgressOutput struct { + _ struct{} `type:"structure"` + + // Progress information for the configuration change that is requested in the + // DescribeDomainChangeProgress request. + ChangeProgressStatus *ChangeProgressStatusDetails `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 DescribeDomainChangeProgressOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DescribeDomainChangeProgressOutput) GoString() string { + return s.String() +} + +// SetChangeProgressStatus sets the ChangeProgressStatus field's value. +func (s *DescribeDomainChangeProgressOutput) SetChangeProgressStatus(v *ChangeProgressStatusDetails) *DescribeDomainChangeProgressOutput { + s.ChangeProgressStatus = v + return s +} + // Container for the parameters to the DescribeElasticsearchDomainConfig operation. // Specifies the domain name for which you want configuration information. type DescribeElasticsearchDomainConfigInput struct { @@ -8877,6 +9256,9 @@ type ElasticsearchDomainConfig struct { // Specifies AutoTuneOptions for the domain. AutoTuneOptions *AutoTuneOptionsStatus `type:"structure"` + // Specifies change details of the domain configuration change. + ChangeProgressDetails *ChangeProgressDetails `type:"structure"` + // The CognitoOptions for the specified domain. For more information, see Amazon // Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptionsStatus `type:"structure"` @@ -8952,6 +9334,12 @@ func (s *ElasticsearchDomainConfig) SetAutoTuneOptions(v *AutoTuneOptionsStatus) return s } +// SetChangeProgressDetails sets the ChangeProgressDetails field's value. +func (s *ElasticsearchDomainConfig) SetChangeProgressDetails(v *ChangeProgressDetails) *ElasticsearchDomainConfig { + s.ChangeProgressDetails = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *ElasticsearchDomainConfig) SetCognitoOptions(v *CognitoOptionsStatus) *ElasticsearchDomainConfig { s.CognitoOptions = v @@ -9035,6 +9423,9 @@ type ElasticsearchDomainStatus struct { // The current status of the Elasticsearch domain's Auto-Tune options. AutoTuneOptions *AutoTuneOptionsOutput `type:"structure"` + // Specifies change details of the domain configuration change. + ChangeProgressDetails *ChangeProgressDetails `type:"structure"` + // The CognitoOptions for the specified domain. For more information, see Amazon // Cognito Authentication for Kibana (http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-cognito-auth.html). CognitoOptions *CognitoOptions `type:"structure"` @@ -9162,6 +9553,12 @@ func (s *ElasticsearchDomainStatus) SetAutoTuneOptions(v *AutoTuneOptionsOutput) return s } +// SetChangeProgressDetails sets the ChangeProgressDetails field's value. +func (s *ElasticsearchDomainStatus) SetChangeProgressDetails(v *ChangeProgressDetails) *ElasticsearchDomainStatus { + s.ChangeProgressDetails = v + return s +} + // SetCognitoOptions sets the CognitoOptions field's value. func (s *ElasticsearchDomainStatus) SetCognitoOptions(v *CognitoOptions) *ElasticsearchDomainStatus { s.CognitoOptions = v @@ -13615,6 +14012,9 @@ func (s *UpgradeElasticsearchDomainInput) SetTargetVersion(v string) *UpgradeEla type UpgradeElasticsearchDomainOutput struct { _ struct{} `type:"structure"` + // Specifies change details of the domain configuration change. + ChangeProgressDetails *ChangeProgressDetails `type:"structure"` + // The name of an Elasticsearch domain. Domain names are unique across the domains // owned by an account within an AWS region. Domain names start with a letter // or number and can contain the following characters: a-z (lowercase), 0-9, @@ -13647,6 +14047,12 @@ func (s UpgradeElasticsearchDomainOutput) GoString() string { return s.String() } +// SetChangeProgressDetails sets the ChangeProgressDetails field's value. +func (s *UpgradeElasticsearchDomainOutput) SetChangeProgressDetails(v *ChangeProgressDetails) *UpgradeElasticsearchDomainOutput { + s.ChangeProgressDetails = v + return s +} + // SetDomainName sets the DomainName field's value. func (s *UpgradeElasticsearchDomainOutput) SetDomainName(v string) *UpgradeElasticsearchDomainOutput { s.DomainName = &v @@ -14619,6 +15025,31 @@ func OutboundCrossClusterSearchConnectionStatusCode_Values() []string { } } +// The overall status value of the domain configuration change. +const ( + // OverallChangeStatusPending is a OverallChangeStatus enum value + OverallChangeStatusPending = "PENDING" + + // OverallChangeStatusProcessing is a OverallChangeStatus enum value + OverallChangeStatusProcessing = "PROCESSING" + + // OverallChangeStatusCompleted is a OverallChangeStatus enum value + OverallChangeStatusCompleted = "COMPLETED" + + // OverallChangeStatusFailed is a OverallChangeStatus enum value + OverallChangeStatusFailed = "FAILED" +) + +// OverallChangeStatus_Values returns all elements of the OverallChangeStatus enum +func OverallChangeStatus_Values() []string { + return []string{ + OverallChangeStatusPending, + OverallChangeStatusProcessing, + OverallChangeStatusCompleted, + OverallChangeStatusFailed, + } +} + const ( // PackageStatusCopying is a PackageStatus enum value PackageStatusCopying = "COPYING" diff --git a/service/elasticsearchservice/elasticsearchserviceiface/interface.go b/service/elasticsearchservice/elasticsearchserviceiface/interface.go index 0ddaeb16b9b..5aaf38d36e4 100644 --- a/service/elasticsearchservice/elasticsearchserviceiface/interface.go +++ b/service/elasticsearchservice/elasticsearchserviceiface/interface.go @@ -115,6 +115,10 @@ type ElasticsearchServiceAPI interface { DescribeDomainAutoTunesPages(*elasticsearchservice.DescribeDomainAutoTunesInput, func(*elasticsearchservice.DescribeDomainAutoTunesOutput, bool) bool) error DescribeDomainAutoTunesPagesWithContext(aws.Context, *elasticsearchservice.DescribeDomainAutoTunesInput, func(*elasticsearchservice.DescribeDomainAutoTunesOutput, bool) bool, ...request.Option) error + DescribeDomainChangeProgress(*elasticsearchservice.DescribeDomainChangeProgressInput) (*elasticsearchservice.DescribeDomainChangeProgressOutput, error) + DescribeDomainChangeProgressWithContext(aws.Context, *elasticsearchservice.DescribeDomainChangeProgressInput, ...request.Option) (*elasticsearchservice.DescribeDomainChangeProgressOutput, error) + DescribeDomainChangeProgressRequest(*elasticsearchservice.DescribeDomainChangeProgressInput) (*request.Request, *elasticsearchservice.DescribeDomainChangeProgressOutput) + DescribeElasticsearchDomain(*elasticsearchservice.DescribeElasticsearchDomainInput) (*elasticsearchservice.DescribeElasticsearchDomainOutput, error) DescribeElasticsearchDomainWithContext(aws.Context, *elasticsearchservice.DescribeElasticsearchDomainInput, ...request.Option) (*elasticsearchservice.DescribeElasticsearchDomainOutput, error) DescribeElasticsearchDomainRequest(*elasticsearchservice.DescribeElasticsearchDomainInput) (*request.Request, *elasticsearchservice.DescribeElasticsearchDomainOutput) diff --git a/service/emr/api.go b/service/emr/api.go index bd86faec5e4..98ab375be67 100644 --- a/service/emr/api.go +++ b/service/emr/api.go @@ -247,6 +247,9 @@ func (c *EMR) AddJobFlowStepsRequest(input *AddJobFlowStepsInput) (req *request. // You can only add steps to a cluster that is in one of the following states: // STARTING, BOOTSTRAPPING, RUNNING, or WAITING. // +// The string values passed into HadoopJarStep object cannot exceed a total +// of 10240 characters. +// // 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. @@ -3849,6 +3852,10 @@ func (c *EMR) PutAutoTerminationPolicyRequest(input *PutAutoTerminationPolicyInp // PutAutoTerminationPolicy API operation for Amazon EMR. // +// +// Auto-termination is supported in Amazon EMR versions 5.30.0 and 6.1.0 and +// later. For more information, see Using an auto-termination policy (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-auto-termination-policy.html). +// // Creates or updates an auto-termination policy for an Amazon EMR cluster. // An auto-termination policy defines the amount of idle time in seconds after // which a cluster automatically terminates. For alternative cluster termination @@ -4610,6 +4617,11 @@ func (c *EMR) SetVisibleToAllUsersRequest(input *SetVisibleToAllUsersInput) (req // SetVisibleToAllUsers API operation for Amazon EMR. // +// +// The SetVisibleToAllUsers parameter is no longer supported. Your cluster may +// be visible to all users in your account. To restrict cluster access using +// an IAM policy, see Identity and Access Management for EMR (https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-access-iam.html). +// // Sets the Cluster$VisibleToAllUsers value for an EMR cluster. When true, IAM // principals in the Amazon Web Services account can perform EMR cluster actions // that their IAM policies allow. When false, only the IAM principal that created @@ -6512,11 +6524,7 @@ type Cluster struct { // // The default value is true if a value is not provided when creating a cluster // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) - // command, or the Amazon Web Services Management Console. IAM principals that - // are allowed to perform actions on the cluster can use the SetVisibleToAllUsers - // action to change the value on a running cluster. For more information, see - // Understanding the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) - // in the Amazon EMRManagement Guide. + // command, or the Amazon Web Services Management Console. VisibleToAllUsers *bool `type:"boolean"` } @@ -10662,8 +10670,8 @@ type InstanceGroupDetail struct { // The date/time the instance group was started. StartDateTime *time.Time `type:"timestamp"` - // State of instance group. The following values are deprecated: STARTING, TERMINATED, - // and FAILED. + // State of instance group. The following values are no longer supported: STARTING, + // TERMINATED, and FAILED. // // State is a required field State *string `type:"string" required:"true" enum:"InstanceGroupState"` @@ -11714,11 +11722,7 @@ type JobFlowDetail struct { // // The default value is true if a value is not provided when creating a cluster // using the EMR API RunJobFlow command, the CLI create-cluster (https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html) - // command, or the Amazon Web Services Management Console. IAM principals that - // are authorized to perform actions on the cluster can use the SetVisibleToAllUsers - // action to change the value on a running cluster. For more information, see - // Understanding the EMR Cluster VisibleToAllUsers Setting (https://docs.aws.amazon.com/emr/latest/ManagementGuide/security_iam_emr-with-iam.html#security_set_visible_to_all_users) - // in the Amazon EMRManagement Guide. + // command, or the Amazon Web Services Management Console. VisibleToAllUsers *bool `type:"boolean"` } @@ -15300,7 +15304,7 @@ type RunJobFlowInput struct { // Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of // applications for Amazon EMR to install and configure when launching the cluster. // For a list of applications available for each Amazon EMR release version, - // see the Amazon EMR Release Guide (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). + // see the Amazon EMRRelease Guide (https://docs.aws.amazon.com/emr/latest/ReleaseGuide/). Applications []*Application `type:"list"` // An IAM role for automatic scaling policies. The default role is EMR_AutoScaling_DefaultRole. @@ -15466,6 +15470,10 @@ type RunJobFlowInput struct { // A list of tags to associate with a cluster and propagate to Amazon EC2 instances. Tags []*Tag `type:"list"` + // + // The VisibleToAllUsers parameter is no longer supported. By default, the value + // is set to true. Setting it to false now has no effect. + // // Set this value to true so that IAM principals in the Amazon Web Services // account associated with the cluster can perform EMR actions on the cluster // that their IAM policies allow. This value defaults to true for clusters created @@ -16673,6 +16681,11 @@ func (s *SimplifiedApplication) SetVersion(v string) *SimplifiedApplication { // The instance fleet configuration is available only in Amazon EMR versions // 4.8.0 and later, excluding 5.0.x versions. Spot Instance allocation strategy // is available in Amazon EMR version 5.12.1 and later. +// +// Spot Instances with a defined duration (also known as Spot blocks) are no +// longer available to new customers from July 1, 2021. For customers who have +// previously used the feature, we will continue to support Spot Instances with +// a defined duration until December 31, 2022. type SpotProvisioningSpecification struct { _ struct{} `type:"structure"` @@ -16690,6 +16703,11 @@ type SpotProvisioningSpecification struct { // EC2 marks the Spot Instance for termination and provides a Spot Instance // termination notice, which gives the instance a two-minute warning before // it terminates. + // + // Spot Instances with a defined duration (also known as Spot blocks) are no + // longer available to new customers from July 1, 2021. For customers who have + // previously used the feature, we will continue to support Spot Instances with + // a defined duration until December 31, 2022. BlockDurationMinutes *int64 `type:"integer"` // The action to take when TargetSpotCapacity has not been fulfilled when the @@ -18203,7 +18221,7 @@ type VolumeSpecification struct { // SizeInGB is a required field SizeInGB *int64 `type:"integer" required:"true"` - // The volume type. Volume types supported are gp2, io1, standard. + // The volume type. Volume types supported are gp2, io1, and standard. // // VolumeType is a required field VolumeType *string `type:"string" required:"true"` diff --git a/service/fis/api.go b/service/fis/api.go index 0a5db5e564d..0eb5e566bb3 100644 --- a/service/fis/api.go +++ b/service/fis/api.go @@ -451,6 +451,89 @@ func (c *FIS) GetExperimentTemplateWithContext(ctx aws.Context, input *GetExperi return out, req.Send() } +const opGetTargetResourceType = "GetTargetResourceType" + +// GetTargetResourceTypeRequest generates a "aws/request.Request" representing the +// client's request for the GetTargetResourceType 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 GetTargetResourceType for more information on using the GetTargetResourceType +// 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 GetTargetResourceTypeRequest method. +// req, resp := client.GetTargetResourceTypeRequest(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/GetTargetResourceType +func (c *FIS) GetTargetResourceTypeRequest(input *GetTargetResourceTypeInput) (req *request.Request, output *GetTargetResourceTypeOutput) { + op := &request.Operation{ + Name: opGetTargetResourceType, + HTTPMethod: "GET", + HTTPPath: "/targetResourceTypes/{resourceType}", + } + + if input == nil { + input = &GetTargetResourceTypeInput{} + } + + output = &GetTargetResourceTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetTargetResourceType API operation for AWS Fault Injection Simulator. +// +// Gets information about the specified 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 Fault Injection Simulator's +// API operation GetTargetResourceType 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/GetTargetResourceType +func (c *FIS) GetTargetResourceType(input *GetTargetResourceTypeInput) (*GetTargetResourceTypeOutput, error) { + req, out := c.GetTargetResourceTypeRequest(input) + return out, req.Send() +} + +// GetTargetResourceTypeWithContext is the same as GetTargetResourceType with the addition of +// the ability to pass a context and additional request options. +// +// See GetTargetResourceType 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) GetTargetResourceTypeWithContext(ctx aws.Context, input *GetTargetResourceTypeInput, opts ...request.Option) (*GetTargetResourceTypeOutput, error) { + req, out := c.GetTargetResourceTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListActions = "ListActions" // ListActionsRequest generates a "aws/request.Request" representing the @@ -939,6 +1022,144 @@ func (c *FIS) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsFor return out, req.Send() } +const opListTargetResourceTypes = "ListTargetResourceTypes" + +// 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 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 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/ListTargetResourceTypes +func (c *FIS) ListTargetResourceTypesRequest(input *ListTargetResourceTypesInput) (req *request.Request, output *ListTargetResourceTypesOutput) { + op := &request.Operation{ + Name: opListTargetResourceTypes, + HTTPMethod: "GET", + HTTPPath: "/targetResourceTypes", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTargetResourceTypesInput{} + } + + output = &ListTargetResourceTypesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTargetResourceTypes API operation for AWS Fault Injection Simulator. +// +// 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 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. +// +// 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 @@ -1957,14 +2178,17 @@ type CreateExperimentTemplateTargetInput struct { // The filters to apply to identify target resources using specific attributes. Filters []*ExperimentTemplateTargetInputFilter `locationName:"filters" type:"list"` + // The resource type parameters. + Parameters map[string]*string `locationName:"parameters" type:"map"` + // The Amazon Resource Names (ARNs) of the resources. ResourceArns []*string `locationName:"resourceArns" type:"list"` // The tags for the target resources. ResourceTags map[string]*string `locationName:"resourceTags" type:"map"` - // The Amazon Web Services resource type. The resource type must be supported - // for the specified action. + // The resource type. The resource type must be supported for the specified + // action. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" type:"string" required:"true"` @@ -2037,6 +2261,12 @@ func (s *CreateExperimentTemplateTargetInput) SetFilters(v []*ExperimentTemplate return s } +// SetParameters sets the Parameters field's value. +func (s *CreateExperimentTemplateTargetInput) SetParameters(v map[string]*string) *CreateExperimentTemplateTargetInput { + s.Parameters = v + return s +} + // SetResourceArns sets the ResourceArns field's value. func (s *CreateExperimentTemplateTargetInput) SetResourceArns(v []*string) *CreateExperimentTemplateTargetInput { s.ResourceArns = v @@ -2557,6 +2787,9 @@ type ExperimentTarget struct { // The filters to apply to identify target resources using specific attributes. Filters []*ExperimentTargetFilter `locationName:"filters" type:"list"` + // The resource type parameters. + Parameters map[string]*string `locationName:"parameters" type:"map"` + // The Amazon Resource Names (ARNs) of the resources. ResourceArns []*string `locationName:"resourceArns" type:"list"` @@ -2594,6 +2827,12 @@ func (s *ExperimentTarget) SetFilters(v []*ExperimentTargetFilter) *ExperimentTa return s } +// SetParameters sets the Parameters field's value. +func (s *ExperimentTarget) SetParameters(v map[string]*string) *ExperimentTarget { + s.Parameters = v + return s +} + // SetResourceArns sets the ResourceArns field's value. func (s *ExperimentTarget) SetResourceArns(v []*string) *ExperimentTarget { s.ResourceArns = v @@ -2947,6 +3186,9 @@ type ExperimentTemplateTarget struct { // The filters to apply to identify target resources using specific attributes. Filters []*ExperimentTemplateTargetFilter `locationName:"filters" type:"list"` + // The resource type parameters. + Parameters map[string]*string `locationName:"parameters" type:"map"` + // The Amazon Resource Names (ARNs) of the targets. ResourceArns []*string `locationName:"resourceArns" type:"list"` @@ -2984,6 +3226,12 @@ func (s *ExperimentTemplateTarget) SetFilters(v []*ExperimentTemplateTargetFilte return s } +// SetParameters sets the Parameters field's value. +func (s *ExperimentTemplateTarget) SetParameters(v map[string]*string) *ExperimentTemplateTarget { + s.Parameters = v + return s +} + // SetResourceArns sets the ResourceArns field's value. func (s *ExperimentTemplateTarget) SetResourceArns(v []*string) *ExperimentTemplateTarget { s.ResourceArns = v @@ -3353,6 +3601,86 @@ func (s *GetExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemplat 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"` @@ -3727,6 +4055,104 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +type ListTargetResourceTypesInput 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 ListTargetResourceTypesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetResourceTypesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTargetResourceTypesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTargetResourceTypesInput"} + 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 *ListTargetResourceTypesInput) SetMaxResults(v int64) *ListTargetResourceTypesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTargetResourceTypesInput) SetNextToken(v string) *ListTargetResourceTypesInput { + s.NextToken = &v + return s +} + +type ListTargetResourceTypesOutput 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 resource types. + TargetResourceTypes []*TargetResourceTypeSummary `locationName:"targetResourceTypes" 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 ListTargetResourceTypesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTargetResourceTypesOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTargetResourceTypesOutput) SetNextToken(v string) *ListTargetResourceTypesOutput { + s.NextToken = &v + return s +} + +// SetTargetResourceTypes sets the TargetResourceTypes field's value. +func (s *ListTargetResourceTypesOutput) SetTargetResourceTypes(v []*TargetResourceTypeSummary) *ListTargetResourceTypesOutput { + s.TargetResourceTypes = v + return s +} + // The specified resource cannot be found. type ResourceNotFoundException struct { _ struct{} `type:"structure"` @@ -4119,6 +4545,139 @@ func (s TagResourceOutput) GoString() string { return s.String() } +// Describes a resource type. +type TargetResourceType struct { + _ struct{} `type:"structure"` + + // A description of the resource type. + Description *string `locationName:"description" type:"string"` + + // The parameters for the resource type. + Parameters map[string]*TargetResourceTypeParameter `locationName:"parameters" type:"map"` + + // The resource type. + ResourceType *string `locationName:"resourceType" 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 TargetResourceType) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetResourceType) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *TargetResourceType) SetDescription(v string) *TargetResourceType { + s.Description = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *TargetResourceType) SetParameters(v map[string]*TargetResourceTypeParameter) *TargetResourceType { + s.Parameters = v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *TargetResourceType) SetResourceType(v string) *TargetResourceType { + s.ResourceType = &v + return s +} + +// Describes the parameters for a resource type. Use parameters to determine +// which tasks are identified during target resolution. +type TargetResourceTypeParameter struct { + _ struct{} `type:"structure"` + + // A description of the parameter. + Description *string `locationName:"description" type:"string"` + + // Indicates whether the parameter is required. + Required *bool `locationName:"required" 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 TargetResourceTypeParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetResourceTypeParameter) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *TargetResourceTypeParameter) SetDescription(v string) *TargetResourceTypeParameter { + s.Description = &v + return s +} + +// SetRequired sets the Required field's value. +func (s *TargetResourceTypeParameter) SetRequired(v bool) *TargetResourceTypeParameter { + s.Required = &v + return s +} + +// Describes a resource type. +type TargetResourceTypeSummary struct { + _ struct{} `type:"structure"` + + // A description of the resource type. + Description *string `locationName:"description" type:"string"` + + // The resource type. + ResourceType *string `locationName:"resourceType" 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 TargetResourceTypeSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TargetResourceTypeSummary) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *TargetResourceTypeSummary) SetDescription(v string) *TargetResourceTypeSummary { + s.Description = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *TargetResourceTypeSummary) SetResourceType(v string) *TargetResourceTypeSummary { + s.ResourceType = &v + return s +} + type UntagResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -4487,14 +5046,17 @@ type UpdateExperimentTemplateTargetInput struct { // The filters to apply to identify target resources using specific attributes. Filters []*ExperimentTemplateTargetInputFilter `locationName:"filters" type:"list"` + // The resource type parameters. + Parameters map[string]*string `locationName:"parameters" type:"map"` + // The Amazon Resource Names (ARNs) of the targets. ResourceArns []*string `locationName:"resourceArns" type:"list"` // The tags for the target resources. ResourceTags map[string]*string `locationName:"resourceTags" type:"map"` - // The Amazon Web Services resource type. The resource type must be supported - // for the specified action. + // The resource type. The resource type must be supported for the specified + // action. // // ResourceType is a required field ResourceType *string `locationName:"resourceType" type:"string" required:"true"` @@ -4555,6 +5117,12 @@ func (s *UpdateExperimentTemplateTargetInput) SetFilters(v []*ExperimentTemplate return s } +// SetParameters sets the Parameters field's value. +func (s *UpdateExperimentTemplateTargetInput) SetParameters(v map[string]*string) *UpdateExperimentTemplateTargetInput { + s.Parameters = v + return s +} + // SetResourceArns sets the ResourceArns field's value. func (s *UpdateExperimentTemplateTargetInput) SetResourceArns(v []*string) *UpdateExperimentTemplateTargetInput { s.ResourceArns = v diff --git a/service/fis/fisiface/interface.go b/service/fis/fisiface/interface.go index 9a7a78183e9..8a9271dca5c 100644 --- a/service/fis/fisiface/interface.go +++ b/service/fis/fisiface/interface.go @@ -80,6 +80,10 @@ type FISAPI interface { GetExperimentTemplateWithContext(aws.Context, *fis.GetExperimentTemplateInput, ...request.Option) (*fis.GetExperimentTemplateOutput, error) GetExperimentTemplateRequest(*fis.GetExperimentTemplateInput) (*request.Request, *fis.GetExperimentTemplateOutput) + GetTargetResourceType(*fis.GetTargetResourceTypeInput) (*fis.GetTargetResourceTypeOutput, error) + GetTargetResourceTypeWithContext(aws.Context, *fis.GetTargetResourceTypeInput, ...request.Option) (*fis.GetTargetResourceTypeOutput, error) + GetTargetResourceTypeRequest(*fis.GetTargetResourceTypeInput) (*request.Request, *fis.GetTargetResourceTypeOutput) + ListActions(*fis.ListActionsInput) (*fis.ListActionsOutput, error) ListActionsWithContext(aws.Context, *fis.ListActionsInput, ...request.Option) (*fis.ListActionsOutput, error) ListActionsRequest(*fis.ListActionsInput) (*request.Request, *fis.ListActionsOutput) @@ -105,6 +109,13 @@ type FISAPI interface { ListTagsForResourceWithContext(aws.Context, *fis.ListTagsForResourceInput, ...request.Option) (*fis.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*fis.ListTagsForResourceInput) (*request.Request, *fis.ListTagsForResourceOutput) + ListTargetResourceTypes(*fis.ListTargetResourceTypesInput) (*fis.ListTargetResourceTypesOutput, error) + ListTargetResourceTypesWithContext(aws.Context, *fis.ListTargetResourceTypesInput, ...request.Option) (*fis.ListTargetResourceTypesOutput, error) + ListTargetResourceTypesRequest(*fis.ListTargetResourceTypesInput) (*request.Request, *fis.ListTargetResourceTypesOutput) + + ListTargetResourceTypesPages(*fis.ListTargetResourceTypesInput, func(*fis.ListTargetResourceTypesOutput, bool) bool) error + ListTargetResourceTypesPagesWithContext(aws.Context, *fis.ListTargetResourceTypesInput, func(*fis.ListTargetResourceTypesOutput, bool) bool, ...request.Option) error + StartExperiment(*fis.StartExperimentInput) (*fis.StartExperimentOutput, error) StartExperimentWithContext(aws.Context, *fis.StartExperimentInput, ...request.Option) (*fis.StartExperimentOutput, error) StartExperimentRequest(*fis.StartExperimentInput) (*request.Request, *fis.StartExperimentOutput) diff --git a/service/glue/api.go b/service/glue/api.go index b03b7a6f584..ddff0112024 100644 --- a/service/glue/api.go +++ b/service/glue/api.go @@ -2472,6 +2472,9 @@ func (c *Glue) CreateRegistryRequest(input *CreateRegistryInput) (req *request.R // * ResourceNumberLimitExceededException // A resource numerical limit was exceeded. // +// * ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// // * InternalServiceException // An internal service error occurred. // @@ -2577,6 +2580,9 @@ func (c *Glue) CreateSchemaRequest(input *CreateSchemaInput) (req *request.Reque // * ResourceNumberLimitExceededException // A resource numerical limit was exceeded. // +// * ConcurrentModificationException +// Two processes are trying to modify a resource simultaneously. +// // * InternalServiceException // An internal service error occurred. // @@ -20167,7 +20173,8 @@ func (s *CatalogTarget) SetTables(v []*string) *CatalogTarget { type CheckSchemaVersionValidityInput struct { _ struct{} `type:"structure"` - // The data format of the schema definition. Currently AVRO and JSON are supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. // // DataFormat is a required field DataFormat *string `type:"string" required:"true" enum:"DataFormat"` @@ -25065,7 +25072,8 @@ type CreateSchemaInput struct { // against all previous schema versions. Compatibility *string `type:"string" enum:"Compatibility"` - // The data format of the schema definition. Currently AVRO and JSON are supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. // // DataFormat is a required field DataFormat *string `type:"string" required:"true" enum:"DataFormat"` @@ -25187,7 +25195,8 @@ type CreateSchemaOutput struct { // The schema compatibility mode. Compatibility *string `type:"string" enum:"Compatibility"` - // The data format of the schema definition. Currently AVRO and JSON are supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. DataFormat *string `type:"string" enum:"DataFormat"` // A description of the schema if specified when created. @@ -34664,8 +34673,8 @@ type GetSchemaByDefinitionOutput struct { // The date and time the schema was created. CreatedTime *string `type:"string"` - // The data format of the schema definition. Currently only AVRO and JSON are - // supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. DataFormat *string `type:"string" enum:"DataFormat"` // The Amazon Resource Name (ARN) of the schema. @@ -34793,7 +34802,8 @@ type GetSchemaOutput struct { // The date and time the schema was created. CreatedTime *string `type:"string"` - // The data format of the schema definition. Currently AVRO and JSON are supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. DataFormat *string `type:"string" enum:"DataFormat"` // A description of schema if specified when created @@ -35010,7 +35020,8 @@ type GetSchemaVersionOutput struct { // The date and time the schema version was created. CreatedTime *string `type:"string"` - // The data format of the schema definition. Currently AVRO and JSON are supported. + // The data format of the schema definition. Currently AVRO, JSON and PROTOBUF + // are supported. DataFormat *string `type:"string" enum:"DataFormat"` // The Amazon Resource Name (ARN) of the schema. @@ -52667,6 +52678,9 @@ const ( // DataFormatJson is a DataFormat enum value DataFormatJson = "JSON" + + // DataFormatProtobuf is a DataFormat enum value + DataFormatProtobuf = "PROTOBUF" ) // DataFormat_Values returns all elements of the DataFormat enum @@ -52674,6 +52688,7 @@ func DataFormat_Values() []string { return []string{ DataFormatAvro, DataFormatJson, + DataFormatProtobuf, } } diff --git a/service/iot/api.go b/service/iot/api.go index ecc0012d447..33726245254 100644 --- a/service/iot/api.go +++ b/service/iot/api.go @@ -68674,6 +68674,15 @@ const ( // LogTargetTypeThingGroup is a LogTargetType enum value LogTargetTypeThingGroup = "THING_GROUP" + + // LogTargetTypeClientId is a LogTargetType enum value + LogTargetTypeClientId = "CLIENT_ID" + + // LogTargetTypeSourceIp is a LogTargetType enum value + LogTargetTypeSourceIp = "SOURCE_IP" + + // LogTargetTypePrincipalId is a LogTargetType enum value + LogTargetTypePrincipalId = "PRINCIPAL_ID" ) // LogTargetType_Values returns all elements of the LogTargetType enum @@ -68681,6 +68690,9 @@ func LogTargetType_Values() []string { return []string{ LogTargetTypeDefault, LogTargetTypeThingGroup, + LogTargetTypeClientId, + LogTargetTypeSourceIp, + LogTargetTypePrincipalId, } } diff --git a/service/personalize/api.go b/service/personalize/api.go index 8fec9fecf8f..3826b27f57d 100644 --- a/service/personalize/api.go +++ b/service/personalize/api.go @@ -1075,6 +1075,29 @@ func (c *Personalize) CreateRecommenderRequest(input *CreateRecommenderInput) (r // (https://docs.aws.amazon.com/personalize/latest/dg/API_RS_GetRecommendations.html) // request. // +// Minimum recommendation requests per second +// +// When you create a recommender, you can configure the recommender's minimum +// recommendation requests per second. The minimum recommendation requests per +// second (minRecommendationRequestsPerSecond) specifies the baseline recommendation +// request throughput provisioned by Amazon Personalize. The default minRecommendationRequestsPerSecond +// is 1. A recommendation request is a single GetRecommendations operation. +// Request throughput is measured in requests per second and Amazon Personalize +// uses your requests per second to derive your requests per hour and the price +// of your recommender usage. +// +// If your requests per second increases beyond minRecommendationRequestsPerSecond, +// Amazon Personalize auto-scales the provisioned capacity up and down, but +// never below minRecommendationRequestsPerSecond. There's a short time delay +// while the capacity is increased that might cause loss of requests. +// +// Your bill is the greater of either the minimum requests per hour (based on +// minRecommendationRequestsPerSecond) or the actual number of requests. The +// actual request throughput used is calculated as the average requests/second +// within a one-hour window. We recommend starting with the default minRecommendationRequestsPerSecond, +// track your usage using Amazon CloudWatch metrics, and then increase the minRecommendationRequestsPerSecond +// as necessary. +// // Status // // A recommender can be in one of the following states: @@ -8602,6 +8625,11 @@ func (s *CreateRecommenderInput) Validate() error { if s.RecipeArn == nil { invalidParams.Add(request.NewErrParamRequired("RecipeArn")) } + if s.RecommenderConfig != nil { + if err := s.RecommenderConfig.Validate(); err != nil { + invalidParams.AddNested("RecommenderConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -14973,6 +15001,10 @@ type RecommenderConfig struct { // itemExplorationConfig data only if your recommenders generate personalized // recommendations for a user (not popular items or similar items). ItemExplorationConfig map[string]*string `locationName:"itemExplorationConfig" type:"map"` + + // Specifies the requested minimum provisioned recommendation requests per second + // that Amazon Personalize will support. + MinRecommendationRequestsPerSecond *int64 `locationName:"minRecommendationRequestsPerSecond" min:"1" type:"integer"` } // String returns the string representation. @@ -14993,12 +15025,31 @@ func (s RecommenderConfig) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *RecommenderConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RecommenderConfig"} + if s.MinRecommendationRequestsPerSecond != nil && *s.MinRecommendationRequestsPerSecond < 1 { + invalidParams.Add(request.NewErrParamMinValue("MinRecommendationRequestsPerSecond", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetItemExplorationConfig sets the ItemExplorationConfig field's value. func (s *RecommenderConfig) SetItemExplorationConfig(v map[string]*string) *RecommenderConfig { s.ItemExplorationConfig = v return s } +// SetMinRecommendationRequestsPerSecond sets the MinRecommendationRequestsPerSecond field's value. +func (s *RecommenderConfig) SetMinRecommendationRequestsPerSecond(v int64) *RecommenderConfig { + s.MinRecommendationRequestsPerSecond = &v + return s +} + // Provides a summary of the properties of the recommender. type RecommenderSummary struct { _ struct{} `type:"structure"` @@ -15102,7 +15153,7 @@ func (s *RecommenderSummary) SetStatus(v string) *RecommenderSummary { } // Provides a summary of the properties of a recommender update. For a complete -// listing, call the DescribeRecommender API. +// listing, call the DescribeRecommender API operation. type RecommenderUpdateSummary struct { _ struct{} `type:"structure"` @@ -15373,8 +15424,7 @@ type S3DataConfig struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the Key Management Service (KMS) key that - // Amazon Personalize uses to encrypt or decrypt the input and output files - // of a batch inference job. + // Amazon Personalize uses to encrypt or decrypt the input and output files. KmsKeyArn *string `locationName:"kmsKeyArn" type:"string"` // The file path of the Amazon S3 bucket. @@ -16272,6 +16322,11 @@ func (s *UpdateRecommenderInput) Validate() error { if s.RecommenderConfig == nil { invalidParams.Add(request.NewErrParamRequired("RecommenderConfig")) } + if s.RecommenderConfig != nil { + if err := s.RecommenderConfig.Validate(); err != nil { + invalidParams.AddNested("RecommenderConfig", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams