diff --git a/CHANGELOG.md b/CHANGELOG.md index eace9aed17..89a5e44ed4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ +Release v1.51.0 (2024-03-14) +=== + +### Service Client Updates +* `service/amplify`: Updates service documentation +* `service/ec2-instance-connect`: Updates service API and documentation +* `service/elasticloadbalancingv2`: Updates service documentation +* `service/fis`: Updates service API and documentation +* `service/rds`: Updates service API, documentation, waiters, paginators, and examples + * Updates Amazon RDS documentation for EBCDIC collation for RDS for Db2. +* `service/secretsmanager`: Updates service documentation + * Doc only update for Secrets Manager +* `service/timestream-influxdb`: Adds new service + +### SDK Features +* `service/iotroborunner`: Remove Iotroborunner + * This change removes the iotroborunner service, since it is deprecated. + Release v1.50.38 (2024-03-13) === diff --git a/CHANGELOG_PENDING.md b/CHANGELOG_PENDING.md index 212d55514e..8a1927a39c 100644 --- a/CHANGELOG_PENDING.md +++ b/CHANGELOG_PENDING.md @@ -1,6 +1,4 @@ ### SDK Features -* `service/iotroborunner`: Remove Iotroborunner - * This change removes the iotroborunner service, since it is deprecated. ### SDK Enhancements diff --git a/aws/version.go b/aws/version.go index b6d9a0d8e6..ff64acbde7 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.50.38" +const SDKVersion = "1.51.0" diff --git a/models/apis/amplify/2017-07-25/docs-2.json b/models/apis/amplify/2017-07-25/docs-2.json index df16a259d9..958f03b04b 100644 --- a/models/apis/amplify/2017-07-25/docs-2.json +++ b/models/apis/amplify/2017-07-25/docs-2.json @@ -3,13 +3,13 @@ "service": "

Amplify enables developers to develop and deploy cloud-powered mobile and web apps. Amplify Hosting provides a continuous delivery and hosting service for web applications. For more information, see the Amplify Hosting User Guide. The Amplify Framework is a comprehensive set of SDKs, libraries, tools, and documentation for client app development. For more information, see the Amplify Framework.

", "operations": { "CreateApp": "

Creates a new Amplify app.

", - "CreateBackendEnvironment": "

Creates a new backend environment for an Amplify app.

", + "CreateBackendEnvironment": "

Creates a new backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend is created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to applications created using the Amplify Gen 2 public preview. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

", "CreateBranch": "

Creates a new branch for an Amplify app.

", "CreateDeployment": "

Creates a deployment for a manually deployed Amplify app. Manually deployed apps are not connected to a repository.

The maximum duration between the CreateDeployment call and the StartDeployment call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment call and the associated Job will fail.

", "CreateDomainAssociation": "

Creates a new domain association for an Amplify app. This action associates a custom domain with the Amplify app

", "CreateWebhook": "

Creates a new webhook on an Amplify app.

", "DeleteApp": "

Deletes an existing Amplify app specified by an app ID.

", - "DeleteBackendEnvironment": "

Deletes a backend environment for an Amplify app.

", + "DeleteBackendEnvironment": "

Deletes a backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend was created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to applications created using the Amplify Gen 2 public preview. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

", "DeleteBranch": "

Deletes a branch for an Amplify app.

", "DeleteDomainAssociation": "

Deletes a domain association for an Amplify app.

", "DeleteJob": "

Deletes a job for a branch of an Amplify app.

", @@ -17,14 +17,14 @@ "GenerateAccessLogs": "

Returns the website access logs for a specific time range using a presigned URL.

", "GetApp": "

Returns an existing Amplify app specified by an app ID.

", "GetArtifactUrl": "

Returns the artifact info that corresponds to an artifact id.

", - "GetBackendEnvironment": "

Returns a backend environment for an Amplify app.

", + "GetBackendEnvironment": "

Returns a backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend was created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to applications created using the Amplify Gen 2 public preview. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

", "GetBranch": "

Returns a branch for an Amplify app.

", "GetDomainAssociation": "

Returns the domain information for an Amplify app.

", "GetJob": "

Returns a job for a branch of an Amplify app.

", "GetWebhook": "

Returns the webhook information that corresponds to a specified webhook ID.

", "ListApps": "

Returns a list of the existing Amplify apps.

", "ListArtifacts": "

Returns a list of artifacts for a specified app, branch, and job.

", - "ListBackendEnvironments": "

Lists the backend environments for an Amplify app.

", + "ListBackendEnvironments": "

Lists the backend environments for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend was created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to applications created using the Amplify Gen 2 public preview. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

", "ListBranches": "

Lists the branches of an Amplify app.

", "ListDomainAssociations": "

Returns the domain associations for an Amplify app.

", "ListJobs": "

Lists the jobs for a branch of an Amplify app.

", diff --git a/models/apis/ec2-instance-connect/2018-04-02/api-2.json b/models/apis/ec2-instance-connect/2018-04-02/api-2.json index 2e8577d640..6b36b88788 100644 --- a/models/apis/ec2-instance-connect/2018-04-02/api-2.json +++ b/models/apis/ec2-instance-connect/2018-04-02/api-2.json @@ -50,7 +50,8 @@ {"shape":"SerialConsoleSessionLimitExceededException"}, {"shape":"SerialConsoleSessionUnavailableException"}, {"shape":"EC2InstanceStateInvalidException"}, - {"shape":"EC2InstanceUnavailableException"} + {"shape":"EC2InstanceUnavailableException"}, + {"shape":"SerialConsoleSessionUnsupportedException"} ] } }, @@ -106,7 +107,7 @@ "type":"string", "max":32, "min":1, - "pattern":"^[A-Za-z_][A-Za-z0-9\\@\\._-]{0,30}[A-Za-z0-9\\$_-]?$" + "pattern":"(^[A-Za-z_][A-Za-z0-9\\@\\._-]{0,30}[A-Za-z0-9\\$_-]?$)|(^(?=.{2,32}$)[0-9]{1,32}[A-Za-z\\@\\._-][A-Za-z0-9\\@\\._-]*[A-Za-z0-9\\$_-]?$)" }, "InvalidArgsException":{ "type":"structure", @@ -183,6 +184,13 @@ "exception":true, "fault":true }, + "SerialConsoleSessionUnsupportedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "exception":true + }, "SerialPort":{ "type":"integer", "max":0, diff --git a/models/apis/ec2-instance-connect/2018-04-02/docs-2.json b/models/apis/ec2-instance-connect/2018-04-02/docs-2.json index bab3ed21f4..eddfd52a00 100644 --- a/models/apis/ec2-instance-connect/2018-04-02/docs-2.json +++ b/models/apis/ec2-instance-connect/2018-04-02/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon EC2 Instance Connect enables system administrators to publish one-time use SSH public keys to EC2, providing users a simple and secure way to connect to their instances.

", + "service": "

This is the Amazon EC2 Instance Connect API Reference. It provides descriptions, syntax, and usage examples for each of the actions for Amazon EC2 Instance Connect. Amazon EC2 Instance Connect enables system administrators to publish one-time use SSH public keys to EC2, providing users a simple and secure way to connect to their instances.

To view the Amazon EC2 Instance Connect content in the Amazon EC2 User Guide, see Connect to your Linux instance using EC2 Instance Connect.

For Amazon EC2 APIs, see the Amazon EC2 API Reference.

", "operations": { "SendSSHPublicKey": "

Pushes an SSH public key to the specified EC2 instance for use by the specified user. The key remains for 60 seconds. For more information, see Connect to your Linux instance using EC2 Instance Connect in the Amazon EC2 User Guide.

", "SendSerialConsoleSSHPublicKey": "

Pushes an SSH public key to the specified EC2 instance. The key remains for 60 seconds, which gives you 60 seconds to establish a serial console connection to the instance using SSH. For more information, see EC2 Serial Console in the Amazon EC2 User Guide.

" @@ -104,6 +104,11 @@ "refs": { } }, + "SerialConsoleSessionUnsupportedException": { + "base": "

Your instance's BIOS version is unsupported for serial console connection. Reboot your instance to update its BIOS, and then try again to connect.

", + "refs": { + } + }, "SerialPort": { "base": null, "refs": { @@ -127,6 +132,7 @@ "SerialConsoleAccessDisabledException$Message": null, "SerialConsoleSessionLimitExceededException$Message": null, "SerialConsoleSessionUnavailableException$Message": null, + "SerialConsoleSessionUnsupportedException$Message": null, "ServiceException$Message": null, "ThrottlingException$Message": null } diff --git a/models/apis/ec2-instance-connect/2018-04-02/endpoint-rule-set-1.json b/models/apis/ec2-instance-connect/2018-04-02/endpoint-rule-set-1.json new file mode 100644 index 0000000000..2b34801f16 --- /dev/null +++ b/models/apis/ec2-instance-connect/2018-04-02/endpoint-rule-set-1.json @@ -0,0 +1,314 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ec2-instance-connect-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ec2-instance-connect-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://ec2-instance-connect.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "endpoint": { + "url": "https://ec2-instance-connect.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ] +} \ No newline at end of file diff --git a/models/apis/ec2-instance-connect/2018-04-02/endpoint-tests-1.json b/models/apis/ec2-instance-connect/2018-04-02/endpoint-tests-1.json new file mode 100644 index 0000000000..a2bfe37fd2 --- /dev/null +++ b/models/apis/ec2-instance-connect/2018-04-02/endpoint-tests-1.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://ec2-instance-connect.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json b/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json index a37707393b..54c16f8482 100644 --- a/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json +++ b/models/apis/elasticloadbalancingv2/2015-12-01/docs-2.json @@ -1067,7 +1067,7 @@ "LoadBalancerAttributeKey": { "base": null, "refs": { - "LoadBalancerAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

The following attributes are supported by both Application Load Balancers and Network Load Balancers:

The following attributes are supported by only Application Load Balancers:

The following attributes are supported by only Network Load Balancers:

" + "LoadBalancerAttribute$Key": "

The name of the attribute.

The following attributes are supported by all load balancers:

The following attributes are supported by both Application Load Balancers and Network Load Balancers:

The following attributes are supported by only Application Load Balancers:

The following attributes are supported by only Network Load Balancers:

" } }, "LoadBalancerAttributeValue": { diff --git a/models/apis/fis/2020-12-01/api-2.json b/models/apis/fis/2020-12-01/api-2.json index 5e0b13dcdd..8ea135188e 100644 --- a/models/apis/fis/2020-12-01/api-2.json +++ b/models/apis/fis/2020-12-01/api-2.json @@ -353,6 +353,7 @@ "type":"structure", "members":{ "id":{"shape":"ActionId"}, + "arn":{"shape":"ResourceArn"}, "description":{"shape":"ActionDescription"}, "parameters":{"shape":"ActionParameterMap"}, "targets":{"shape":"ActionTargetMap"}, @@ -399,6 +400,7 @@ "type":"structure", "members":{ "id":{"shape":"ActionId"}, + "arn":{"shape":"ResourceArn"}, "description":{"shape":"ActionDescription"}, "targets":{"shape":"ActionTargetMap"}, "tags":{"shape":"TagMap"} @@ -424,6 +426,13 @@ "max":64, "pattern":"[\\S]+" }, + "ActionsMode":{ + "type":"string", + "enum":[ + "skip-all", + "run-all" + ] + }, "ClientToken":{ "type":"string", "max":1024, @@ -629,6 +638,7 @@ "type":"structure", "members":{ "id":{"shape":"ExperimentId"}, + "arn":{"shape":"ResourceArn"}, "experimentTemplateId":{"shape":"ExperimentTemplateId"}, "roleArn":{"shape":"RoleArn"}, "state":{"shape":"ExperimentState"}, @@ -758,7 +768,8 @@ "type":"structure", "members":{ "accountTargeting":{"shape":"AccountTargeting"}, - "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"} + "emptyTargetResolutionMode":{"shape":"EmptyTargetResolutionMode"}, + "actionsMode":{"shape":"ActionsMode"} } }, "ExperimentS3LogConfiguration":{ @@ -808,10 +819,12 @@ "type":"structure", "members":{ "id":{"shape":"ExperimentId"}, + "arn":{"shape":"ResourceArn"}, "experimentTemplateId":{"shape":"ExperimentTemplateId"}, "state":{"shape":"ExperimentState"}, "creationTime":{"shape":"CreationTime"}, - "tags":{"shape":"TagMap"} + "tags":{"shape":"TagMap"}, + "experimentOptions":{"shape":"ExperimentOptions"} } }, "ExperimentSummaryList":{ @@ -908,6 +921,7 @@ "type":"structure", "members":{ "id":{"shape":"ExperimentTemplateId"}, + "arn":{"shape":"ResourceArn"}, "description":{"shape":"ExperimentTemplateDescription"}, "targets":{"shape":"ExperimentTemplateTargetMap"}, "actions":{"shape":"ExperimentTemplateActionMap"}, @@ -1048,6 +1062,7 @@ "type":"structure", "members":{ "id":{"shape":"ExperimentTemplateId"}, + "arn":{"shape":"ResourceArn"}, "description":{"shape":"ExperimentTemplateDescription"}, "creationTime":{"shape":"CreationTime"}, "lastUpdateTime":{"shape":"LastUpdateTime"}, @@ -1395,6 +1410,11 @@ "shape":"NextToken", "location":"querystring", "locationName":"nextToken" + }, + "experimentTemplateId":{ + "shape":"ExperimentTemplateId", + "location":"querystring", + "locationName":"experimentTemplateId" } } }, @@ -1548,6 +1568,12 @@ "error":{"httpStatusCode":402}, "exception":true }, + "StartExperimentExperimentOptionsInput":{ + "type":"structure", + "members":{ + "actionsMode":{"shape":"ActionsMode"} + } + }, "StartExperimentRequest":{ "type":"structure", "required":[ @@ -1560,6 +1586,7 @@ "idempotencyToken":true }, "experimentTemplateId":{"shape":"ExperimentTemplateId"}, + "experimentOptions":{"shape":"StartExperimentExperimentOptionsInput"}, "tags":{"shape":"TagMap"} } }, diff --git a/models/apis/fis/2020-12-01/docs-2.json b/models/apis/fis/2020-12-01/docs-2.json index aa0d10b7b5..07a628433e 100644 --- a/models/apis/fis/2020-12-01/docs-2.json +++ b/models/apis/fis/2020-12-01/docs-2.json @@ -1,9 +1,9 @@ { "version": "2.0", - "service": "

Fault Injection Simulator is a managed service that enables you to perform fault injection experiments on your Amazon Web Services workloads. For more information, see the Fault Injection Simulator User Guide.

", + "service": "

Fault Injection Service is a managed service that enables you to perform fault injection experiments on your Amazon Web Services workloads. For more information, see the Fault Injection Service User Guide.

", "operations": { - "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

For more information, see experiment templates in the Fault Injection Simulator User Guide.

", - "CreateTargetAccountConfiguration": "

Creates a target account configuration for the experiment template. A target account configuration is required when accountTargeting of experimentOptions is set to multi-account. For more information, see experiment options in the Fault Injection Simulator User Guide.

", + "CreateExperimentTemplate": "

Creates an experiment template.

An experiment template includes the following components:

For more information, see experiment templates in the Fault Injection Service User Guide.

", + "CreateTargetAccountConfiguration": "

Creates a target account configuration for the experiment template. A target account configuration is required when accountTargeting of experimentOptions is set to multi-account. For more information, see experiment options in the Fault Injection Service User Guide.

", "DeleteExperimentTemplate": "

Deletes the specified experiment template.

", "DeleteTargetAccountConfiguration": "

Deletes the specified target account configuration of the experiment template.

", "GetAction": "

Gets information about the specified FIS action.

", @@ -37,7 +37,7 @@ } }, "Action": { - "base": "

Describes an action. For more information, see FIS actions in the Fault Injection Simulator User Guide.

", + "base": "

Describes an action. For more information, see FIS actions in the Fault Injection Service User Guide.

", "refs": { "GetActionResponse$action": "

Information about the action.

" } @@ -122,6 +122,13 @@ "ActionTargetMap$key": null } }, + "ActionsMode": { + "base": null, + "refs": { + "ExperimentOptions$actionsMode": "

The actions mode of the experiment that is set from the StartExperiment API command.

", + "StartExperimentExperimentOptionsInput$actionsMode": "

Specifies the actions mode for experiment options.

" + } + }, "ClientToken": { "base": null, "refs": { @@ -144,7 +151,7 @@ } }, "CreateExperimentTemplateActionInput": { - "base": "

Specifies an action for an experiment template.

For more information, see Actions in the Fault Injection Simulator User Guide.

", + "base": "

Specifies an action for an experiment template.

For more information, see Actions in the Fault Injection Service User Guide.

", "refs": { "CreateExperimentTemplateActionInputMap$value": null } @@ -190,7 +197,7 @@ } }, "CreateExperimentTemplateTargetInput": { - "base": "

Specifies a target for an experiment. You must specify at least one Amazon Resource Name (ARN) or at least one resource tag. You cannot specify both ARNs and tags.

For more information, see Targets in the Fault Injection Simulator User Guide.

", + "base": "

Specifies a target for an experiment. You must specify at least one Amazon Resource Name (ARN) or at least one resource tag. You cannot specify both ARNs and tags.

For more information, see Targets in the Fault Injection Service User Guide.

", "refs": { "CreateExperimentTemplateTargetInputMap$value": null } @@ -395,7 +402,8 @@ "ExperimentOptions": { "base": "

Describes the options for an experiment.

", "refs": { - "Experiment$experimentOptions": "

The experiment options for the experiment.

" + "Experiment$experimentOptions": "

The experiment options for the experiment.

", + "ExperimentSummary$experimentOptions": "

The experiment options for the experiment.

" } }, "ExperimentS3LogConfiguration": { @@ -669,6 +677,7 @@ "ExperimentTemplateSummary$id": "

The ID of the experiment template.

", "GetExperimentTemplateRequest$id": "

The ID of the experiment template.

", "GetTargetAccountConfigurationRequest$experimentTemplateId": "

The ID of the experiment template.

", + "ListExperimentsRequest$experimentTemplateId": "

The ID of the experiment template.

", "ListTargetAccountConfigurationsRequest$experimentTemplateId": "

The ID of the experiment template.

", "StartExperimentRequest$experimentTemplateId": "

The ID of the experiment template.

", "UpdateExperimentTemplateRequest$id": "

The ID of the experiment template.

", @@ -764,7 +773,7 @@ } }, "ExperimentTemplateTargetInputFilter": { - "base": "

Specifies a filter used for the target resource input in an experiment template.

For more information, see Resource filters in the Fault Injection Simulator User Guide.

", + "base": "

Specifies a filter used for the target resource input in an experiment template.

For more information, see Resource filters in the Fault Injection Service User Guide.

", "refs": { "ExperimentTemplateTargetFilterInputList$member": null } @@ -1038,6 +1047,12 @@ "ResourceArn": { "base": null, "refs": { + "Action$arn": "

The Amazon Resource Name (ARN) of the action.

", + "ActionSummary$arn": "

The Amazon Resource Name (ARN) of the action.

", + "Experiment$arn": "

The Amazon Resource Name (ARN) of the experiment.

", + "ExperimentSummary$arn": "

The Amazon Resource Name (ARN) of the experiment.

", + "ExperimentTemplate$arn": "

The Amazon Resource Name (ARN) of the experiment template.

", + "ExperimentTemplateSummary$arn": "

The Amazon Resource Name (ARN) of the experiment template.

", "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", "ResourceArnList$member": null, "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource.

", @@ -1094,6 +1109,12 @@ "refs": { } }, + "StartExperimentExperimentOptionsInput": { + "base": "

Specifies experiment options for running an experiment.

", + "refs": { + "StartExperimentRequest$experimentOptions": "

The experiment options for running the experiment.

" + } + }, "StartExperimentRequest": { "base": null, "refs": { @@ -1222,15 +1243,15 @@ "TargetAccountId": { "base": null, "refs": { - "CreateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", - "DeleteTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", - "ExperimentTargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", - "ExperimentTargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", - "GetExperimentTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", - "GetTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

", - "TargetAccountConfiguration$accountId": "

The AWS account ID of the target account.

", - "TargetAccountConfigurationSummary$accountId": "

The AWS account ID of the target account.

", - "UpdateTargetAccountConfigurationRequest$accountId": "

The AWS account ID of the target account.

" + "CreateTargetAccountConfigurationRequest$accountId": "

The Amazon Web Services account ID of the target account.

", + "DeleteTargetAccountConfigurationRequest$accountId": "

The Amazon Web Services account ID of the target account.

", + "ExperimentTargetAccountConfiguration$accountId": "

The Amazon Web Services account ID of the target account.

", + "ExperimentTargetAccountConfigurationSummary$accountId": "

The Amazon Web Services account ID of the target account.

", + "GetExperimentTargetAccountConfigurationRequest$accountId": "

The Amazon Web Services account ID of the target account.

", + "GetTargetAccountConfigurationRequest$accountId": "

The Amazon Web Services account ID of the target account.

", + "TargetAccountConfiguration$accountId": "

The Amazon Web Services account ID of the target account.

", + "TargetAccountConfigurationSummary$accountId": "

The Amazon Web Services account ID of the target account.

", + "UpdateTargetAccountConfigurationRequest$accountId": "

The Amazon Web Services account ID of the target account.

" } }, "TargetInformationKey": { diff --git a/models/apis/rds/2014-10-31/docs-2.json b/models/apis/rds/2014-10-31/docs-2.json index 05b36affa9..f7d51bb074 100644 --- a/models/apis/rds/2014-10-31/docs-2.json +++ b/models/apis/rds/2014-10-31/docs-2.json @@ -2805,7 +2805,7 @@ "DescribeEventSubscriptionsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeEventsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeExportTasksMessage$Filters": "

Filters specify one or more snapshot or cluster exports to describe. The filters are specified as name-value pairs that define what to include in the output. Filter names and values are case-sensitive.

Supported filters include the following:

", - "DescribeGlobalClustersMessage$Filters": "

This parameter isn't currently supported.

", + "DescribeGlobalClustersMessage$Filters": "

A filter that specifies one or more global database clusters to describe. This parameter is case-sensitive.

Currently, the only supported filter is region.

If used, the request returns information about any global cluster with at least one member (primary or secondary) in the specified Amazon Web Services Regions.

", "DescribeIntegrationsMessage$Filters": "

A filter that specifies one or more resources to return.

", "DescribeOptionGroupOptionsMessage$Filters": "

This parameter isn't currently supported.

", "DescribeOptionGroupsMessage$Filters": "

This parameter isn't currently supported.

", @@ -4683,7 +4683,7 @@ "CreateDBClusterParameterGroupMessage$Description": "

The description for the DB cluster parameter group.

", "CreateDBClusterSnapshotMessage$DBClusterSnapshotIdentifier": "

The identifier of the DB cluster snapshot. This parameter is stored as a lowercase string.

Constraints:

Example: my-cluster1-snapshot1

", "CreateDBClusterSnapshotMessage$DBClusterIdentifier": "

The identifier of the DB cluster to create a snapshot for. This parameter isn't case-sensitive.

Constraints:

Example: my-cluster1

", - "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

RDS for Db2

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

RDS for PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

RDS for SQL Server

Not applicable. Must be null.

", + "CreateDBInstanceMessage$DBName": "

The meaning of this parameter differs according to the database engine you use.

Amazon Aurora MySQL

The name of the database to create when the primary DB instance of the Aurora MySQL DB cluster is created. If this parameter isn't specified for an Aurora MySQL DB cluster, no database is created in the DB cluster.

Constraints:

Amazon Aurora PostgreSQL

The name of the database to create when the primary DB instance of the Aurora PostgreSQL DB cluster is created. If this parameter isn't specified for an Aurora PostgreSQL DB cluster, a database named postgres is created in the DB cluster.

Constraints:

Amazon RDS Custom for Oracle

The Oracle System ID (SID) of the created RDS Custom DB instance. If you don't specify a value, the default value is ORCL for non-CDBs and RDSCDB for CDBs.

Default: ORCL

Constraints:

Amazon RDS Custom for SQL Server

Not applicable. Must be null.

RDS for Db2

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance. In some cases, we recommend that you don't add a database name. For more information, see Additional considerations in the Amazon RDS User Guide.

Constraints:

RDS for MariaDB

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for MySQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, no database is created in the DB instance.

Constraints:

RDS for Oracle

The Oracle System ID (SID) of the created DB instance. If you don't specify a value, the default value is ORCL. You can't specify the string null, or any other reserved word, for DBName.

Default: ORCL

Constraints:

RDS for PostgreSQL

The name of the database to create when the DB instance is created. If this parameter isn't specified, a database named postgres is created in the DB instance.

Constraints:

RDS for SQL Server

Not applicable. Must be null.

", "CreateDBInstanceMessage$DBInstanceIdentifier": "

The identifier for this DB instance. This parameter is stored as a lowercase string.

Constraints:

Example: mydbinstance

", "CreateDBInstanceMessage$DBInstanceClass": "

The compute and memory capacity of the DB instance, for example db.m5.large. Not all DB instance classes are available in all Amazon Web Services Regions, or for all database engines. For the full list of DB instance classes, and availability for your engine, see DB instance classes in the Amazon RDS User Guide or Aurora DB instance classes in the Amazon Aurora User Guide.

", "CreateDBInstanceMessage$Engine": "

The database engine to use for this DB instance.

Not every database engine is available in every Amazon Web Services Region.

Valid Values:

", diff --git a/models/apis/secretsmanager/2017-10-17/docs-2.json b/models/apis/secretsmanager/2017-10-17/docs-2.json index 44c02c7eae..06d9fcf965 100644 --- a/models/apis/secretsmanager/2017-10-17/docs-2.json +++ b/models/apis/secretsmanager/2017-10-17/docs-2.json @@ -8,7 +8,7 @@ "DeleteResourcePolicy": "

Deletes the resource-based permission policy attached to the secret. To attach a policy to a secret, use PutResourcePolicy.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:DeleteResourcePolicy. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "DeleteSecret": "

Deletes a secret and all of its versions. You can specify a recovery window during which you can restore the secret. The minimum recovery window is 7 days. The default recovery window is 30 days. Secrets Manager attaches a DeletionDate stamp to the secret that specifies the end of the recovery window. At the end of the recovery window, Secrets Manager deletes the secret permanently.

You can't delete a primary secret that is replicated to other Regions. You must first delete the replicas using RemoveRegionsFromReplication, and then delete the primary secret. When you delete a replica, it is deleted immediately.

You can't directly delete a version of a secret. Instead, you remove all staging labels from the version using UpdateSecretVersionStage. This marks the version as deprecated, and then Secrets Manager can automatically delete the version in the background.

To determine whether an application still uses a secret, you can create an Amazon CloudWatch alarm to alert you to any attempts to access a secret during the recovery window. For more information, see Monitor secrets scheduled for deletion.

Secrets Manager performs the permanent secret deletion at the end of the waiting period as a background task with low priority. There is no guarantee of a specific time after the recovery window for the permanent delete to occur.

At any time before recovery window ends, you can use RestoreSecret to remove the DeletionDate and cancel the deletion of the secret.

When a secret is scheduled for deletion, you cannot retrieve the secret value. You must first cancel the deletion with RestoreSecret and then you can retrieve the secret.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:DeleteSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "DescribeSecret": "

Retrieves the details of a secret. It does not include the encrypted secret value. Secrets Manager only returns fields that have a value in the response.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:DescribeSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", - "GetRandomPassword": "

Generates a random password. We recommend that you specify the maximum length and include every character type that the system you are generating a password for can support. By default, Secrets Manager uses uppercase and lowercase letters, numbers, and the following characters in passwords: !\\\"#$%&'()*+,-./:;<=>?@[\\\\]^_`{|}~

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetRandomPassword. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", + "GetRandomPassword": "

Generates a random password. We recommend that you specify the maximum length and include every character type that the system you are generating a password for can support. By default, Secrets Manager uses uppercase and lowercase letters, numbers, and the following characters in passwords: !\\\"#$%&'()*+,-./:;<=>?@[\\\\]^_`{|}~

Secrets Manager generates a CloudTrail log entry when you call this action.

Required permissions: secretsmanager:GetRandomPassword. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "GetResourcePolicy": "

Retrieves the JSON text of the resource-based policy document attached to the secret. For more information about permissions policies attached to a secret, see Permissions policies attached to a secret.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetResourcePolicy. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "GetSecretValue": "

Retrieves the contents of the encrypted fields SecretString or SecretBinary from the specified version of a secret, whichever contains content.

To retrieve the values for a group of secrets, call BatchGetSecretValue.

We recommend that you cache your secret values by using client-side caching. Caching secrets improves speed and reduces your costs. For more information, see Cache secrets for your applications.

To retrieve the previous version of a secret, use VersionStage and specify AWSPREVIOUS. To revert to the previous version of a secret, call UpdateSecretVersionStage.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:GetSecretValue. If the secret is encrypted using a customer-managed key instead of the Amazon Web Services managed key aws/secretsmanager, then you also need kms:Decrypt permissions for that key. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", "ListSecretVersionIds": "

Lists the versions of a secret. Secrets Manager uses staging labels to indicate the different versions of a secret. For more information, see Secrets Manager concepts: Versions.

To list the secrets in the account, use ListSecrets.

Secrets Manager generates a CloudTrail log entry when you call this action. Do not include sensitive information in request parameters because it might be logged. For more information, see Logging Secrets Manager events with CloudTrail.

Required permissions: secretsmanager:ListSecretVersionIds. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager.

", @@ -396,7 +396,7 @@ "MaxResultsBatchType": { "base": null, "refs": { - "BatchGetSecretValueRequest$MaxResults": "

The number of results to include in the response.

If there are more results available, in the response, Secrets Manager includes NextToken. To get the next results, call BatchGetSecretValue again with the value from NextToken.

" + "BatchGetSecretValueRequest$MaxResults": "

The number of results to include in the response.

If there are more results available, in the response, Secrets Manager includes NextToken. To get the next results, call BatchGetSecretValue again with the value from NextToken. To use this parameter, you must also use the Filters parameter.

" } }, "MaxResultsType": { @@ -419,7 +419,7 @@ "NextRotationDateType": { "base": null, "refs": { - "DescribeSecretResponse$NextRotationDate": "

The next rotation is scheduled to occur on or before this date. If the secret isn't configured for rotation or rotation has been disabled, Secrets Manager returns null. If rotation fails, Secrets Manager retries the entire rotation process multiple times. If rotation is unsuccessful, this date may be in the past.

", + "DescribeSecretResponse$NextRotationDate": "

The next rotation is scheduled to occur on or before this date. If the secret isn't configured for rotation or rotation has been disabled, Secrets Manager returns null. If rotation fails, Secrets Manager retries the entire rotation process multiple times. If rotation is unsuccessful, this date may be in the past.

This date represents the latest date that rotation will occur, but it is not an approximate rotation date. In some cases, for example if you turn off automatic rotation and then turn it back on, the next rotation may occur much sooner than this date.

", "SecretListEntry$NextRotationDate": "

The next rotation is scheduled to occur on or before this date. If the secret isn't configured for rotation or rotation has been disabled, Secrets Manager returns null.

" } }, diff --git a/models/apis/timestream-influxdb/2023-01-27/api-2.json b/models/apis/timestream-influxdb/2023-01-27/api-2.json new file mode 100644 index 0000000000..625aca3e14 --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/api-2.json @@ -0,0 +1,851 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2023-01-27", + "endpointPrefix":"timestream-influxdb", + "jsonVersion":"1.0", + "protocol":"json", + "ripServiceName":"timestream-influxdb", + "serviceAbbreviation":"Timestream InfluxDB", + "serviceFullName":"Timestream InfluxDB", + "serviceId":"Timestream InfluxDB", + "signatureVersion":"v4", + "signingName":"timestream-influxdb", + "targetPrefix":"AmazonTimestreamInfluxDB", + "uid":"timestream-influxdb-2023-01-27" + }, + "operations":{ + "CreateDbInstance":{ + "name":"CreateDbInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateDbInstanceInput"}, + "output":{"shape":"CreateDbInstanceOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "CreateDbParameterGroup":{ + "name":"CreateDbParameterGroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateDbParameterGroupInput"}, + "output":{"shape":"CreateDbParameterGroupOutput"}, + "errors":[ + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteDbInstance":{ + "name":"DeleteDbInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDbInstanceInput"}, + "output":{"shape":"DeleteDbInstanceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "GetDbInstance":{ + "name":"GetDbInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDbInstanceInput"}, + "output":{"shape":"GetDbInstanceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetDbParameterGroup":{ + "name":"GetDbParameterGroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetDbParameterGroupInput"}, + "output":{"shape":"GetDbParameterGroupOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListDbInstances":{ + "name":"ListDbInstances", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDbInstancesInput"}, + "output":{"shape":"ListDbInstancesOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListDbParameterGroups":{ + "name":"ListDbParameterGroups", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDbParameterGroupsInput"}, + "output":{"shape":"ListDbParameterGroupsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"} + ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "errors":[ + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, + "UpdateDbInstance":{ + "name":"UpdateDbInstance", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateDbInstanceInput"}, + "output":{"shape":"UpdateDbInstanceOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "AllocatedStorage":{ + "type":"integer", + "box":true, + "max":16384, + "min":20 + }, + "Arn":{ + "type":"string", + "max":1011, + "min":1, + "pattern":"arn:aws[a-z\\-]*:timestream\\-influxdb:[a-z0-9\\-]+:[0-9]{12}:(db\\-instance|db\\-parameter\\-group)/[a-zA-Z0-9]{3,64}" + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "Bucket":{ + "type":"string", + "max":64, + "min":2, + "pattern":"[^_][^\"]*" + }, + "ConflictException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"} + }, + "exception":true + }, + "CreateDbInstanceInput":{ + "type":"structure", + "required":[ + "name", + "password", + "dbInstanceType", + "vpcSubnetIds", + "vpcSecurityGroupIds", + "allocatedStorage" + ], + "members":{ + "name":{"shape":"DbInstanceName"}, + "username":{"shape":"Username"}, + "password":{"shape":"Password"}, + "organization":{"shape":"Organization"}, + "bucket":{"shape":"Bucket"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "vpcSubnetIds":{"shape":"VpcSubnetIdList"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "publiclyAccessible":{"shape":"Boolean"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"}, + "deploymentType":{"shape":"DeploymentType"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "tags":{"shape":"RequestTagMap"} + } + }, + "CreateDbInstanceOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn", + "vpcSubnetIds" + ], + "members":{ + "id":{"shape":"DbInstanceId"}, + "name":{"shape":"DbInstanceName"}, + "arn":{"shape":"Arn"}, + "status":{"shape":"Status"}, + "endpoint":{"shape":"String"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "deploymentType":{"shape":"DeploymentType"}, + "vpcSubnetIds":{"shape":"VpcSubnetIdList"}, + "publiclyAccessible":{"shape":"Boolean"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"}, + "availabilityZone":{"shape":"String"}, + "secondaryAvailabilityZone":{"shape":"String"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "influxAuthParametersSecretArn":{"shape":"String"} + } + }, + "CreateDbParameterGroupInput":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"DbParameterGroupName"}, + "description":{"shape":"CreateDbParameterGroupInputDescriptionString"}, + "parameters":{"shape":"Parameters"}, + "tags":{"shape":"RequestTagMap"} + } + }, + "CreateDbParameterGroupInputDescriptionString":{ + "type":"string", + "max":500, + "min":0 + }, + "CreateDbParameterGroupOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn" + ], + "members":{ + "id":{"shape":"DbParameterGroupId"}, + "name":{"shape":"DbParameterGroupName"}, + "arn":{"shape":"Arn"}, + "description":{"shape":"String"}, + "parameters":{"shape":"Parameters"} + } + }, + "DbInstanceId":{ + "type":"string", + "max":64, + "min":3, + "pattern":"[a-zA-Z0-9]+" + }, + "DbInstanceIdentifier":{ + "type":"string", + "max":64, + "min":3, + "pattern":"[a-zA-Z0-9]+" + }, + "DbInstanceName":{ + "type":"string", + "max":40, + "min":3, + "pattern":"[a-zA-z][a-zA-Z0-9]*(-[a-zA-Z0-9]+)*" + }, + "DbInstanceSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "arn" + ], + "members":{ + "id":{"shape":"DbInstanceId"}, + "name":{"shape":"DbInstanceName"}, + "arn":{"shape":"Arn"}, + "status":{"shape":"Status"}, + "endpoint":{"shape":"String"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "deploymentType":{"shape":"DeploymentType"} + } + }, + "DbInstanceSummaryList":{ + "type":"list", + "member":{"shape":"DbInstanceSummary"} + }, + "DbInstanceType":{ + "type":"string", + "enum":[ + "db.influx.medium", + "db.influx.large", + "db.influx.xlarge", + "db.influx.2xlarge", + "db.influx.4xlarge", + "db.influx.8xlarge", + "db.influx.12xlarge", + "db.influx.16xlarge" + ] + }, + "DbParameterGroupId":{ + "type":"string", + "max":64, + "min":3, + "pattern":"[a-zA-Z0-9]+" + }, + "DbParameterGroupIdentifier":{ + "type":"string", + "max":64, + "min":3, + "pattern":"[a-zA-Z0-9]+" + }, + "DbParameterGroupName":{ + "type":"string", + "max":64, + "min":3, + "pattern":"[a-zA-z][a-zA-Z0-9]*(-[a-zA-Z0-9]+)*" + }, + "DbParameterGroupSummary":{ + "type":"structure", + "required":[ + "id", + "name", + "arn" + ], + "members":{ + "id":{"shape":"DbParameterGroupId"}, + "name":{"shape":"DbParameterGroupName"}, + "arn":{"shape":"Arn"}, + "description":{"shape":"String"} + } + }, + "DbParameterGroupSummaryList":{ + "type":"list", + "member":{"shape":"DbParameterGroupSummary"} + }, + "DbStorageType":{ + "type":"string", + "enum":[ + "InfluxIOIncludedT1", + "InfluxIOIncludedT2", + "InfluxIOIncludedT3" + ] + }, + "DeleteDbInstanceInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{"shape":"DbInstanceIdentifier"} + } + }, + "DeleteDbInstanceOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn", + "vpcSubnetIds" + ], + "members":{ + "id":{"shape":"DbInstanceId"}, + "name":{"shape":"DbInstanceName"}, + "arn":{"shape":"Arn"}, + "status":{"shape":"Status"}, + "endpoint":{"shape":"String"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "deploymentType":{"shape":"DeploymentType"}, + "vpcSubnetIds":{"shape":"VpcSubnetIdList"}, + "publiclyAccessible":{"shape":"Boolean"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"}, + "availabilityZone":{"shape":"String"}, + "secondaryAvailabilityZone":{"shape":"String"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "influxAuthParametersSecretArn":{"shape":"String"} + } + }, + "DeploymentType":{ + "type":"string", + "enum":[ + "SINGLE_AZ", + "WITH_MULTIAZ_STANDBY" + ] + }, + "GetDbInstanceInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{"shape":"DbInstanceIdentifier"} + } + }, + "GetDbInstanceOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn", + "vpcSubnetIds" + ], + "members":{ + "id":{"shape":"DbInstanceId"}, + "name":{"shape":"DbInstanceName"}, + "arn":{"shape":"Arn"}, + "status":{"shape":"Status"}, + "endpoint":{"shape":"String"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "deploymentType":{"shape":"DeploymentType"}, + "vpcSubnetIds":{"shape":"VpcSubnetIdList"}, + "publiclyAccessible":{"shape":"Boolean"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"}, + "availabilityZone":{"shape":"String"}, + "secondaryAvailabilityZone":{"shape":"String"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "influxAuthParametersSecretArn":{"shape":"String"} + } + }, + "GetDbParameterGroupInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{"shape":"DbParameterGroupIdentifier"} + } + }, + "GetDbParameterGroupOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn" + ], + "members":{ + "id":{"shape":"DbParameterGroupId"}, + "name":{"shape":"DbParameterGroupName"}, + "arn":{"shape":"Arn"}, + "description":{"shape":"String"}, + "parameters":{"shape":"Parameters"} + } + }, + "InfluxDBv2Parameters":{ + "type":"structure", + "members":{ + "fluxLogEnabled":{"shape":"Boolean"}, + "logLevel":{"shape":"LogLevel"}, + "noTasks":{"shape":"Boolean"}, + "queryConcurrency":{"shape":"InfluxDBv2ParametersQueryConcurrencyInteger"}, + "queryQueueSize":{"shape":"InfluxDBv2ParametersQueryQueueSizeInteger"}, + "tracingType":{"shape":"TracingType"}, + "metricsDisabled":{"shape":"Boolean"} + } + }, + "InfluxDBv2ParametersQueryConcurrencyInteger":{ + "type":"integer", + "box":true, + "max":256, + "min":0 + }, + "InfluxDBv2ParametersQueryQueueSizeInteger":{ + "type":"integer", + "box":true, + "max":256, + "min":0 + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListDbInstancesInput":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListDbInstancesOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DbInstanceSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListDbParameterGroupsInput":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "maxResults":{"shape":"MaxResults"} + } + }, + "ListDbParameterGroupsOutput":{ + "type":"structure", + "required":["items"], + "members":{ + "items":{"shape":"DbParameterGroupSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{"shape":"Arn"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"ResponseTagMap"} + } + }, + "LogDeliveryConfiguration":{ + "type":"structure", + "required":["s3Configuration"], + "members":{ + "s3Configuration":{"shape":"S3Configuration"} + } + }, + "LogLevel":{ + "type":"string", + "enum":[ + "debug", + "info", + "error" + ] + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "NextToken":{"type":"string"}, + "Organization":{ + "type":"string", + "max":64, + "min":1 + }, + "Parameters":{ + "type":"structure", + "members":{ + "InfluxDBv2":{"shape":"InfluxDBv2Parameters"} + }, + "union":true + }, + "Password":{ + "type":"string", + "max":64, + "min":8, + "pattern":"[a-zA-Z0-9]+", + "sensitive":true + }, + "RequestTagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":200, + "min":1 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":[ + "message", + "resourceId", + "resourceType" + ], + "members":{ + "message":{"shape":"String"}, + "resourceId":{"shape":"String"}, + "resourceType":{"shape":"String"} + }, + "exception":true + }, + "ResponseTagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"}, + "max":200, + "min":0 + }, + "S3Configuration":{ + "type":"structure", + "required":[ + "bucketName", + "enabled" + ], + "members":{ + "bucketName":{"shape":"S3ConfigurationBucketNameString"}, + "enabled":{"shape":"Boolean"} + } + }, + "S3ConfigurationBucketNameString":{ + "type":"string", + "max":63, + "min":3, + "pattern":"[0-9a-z]+[0-9a-z\\.\\-]*[0-9a-z]+" + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "Status":{ + "type":"string", + "enum":[ + "CREATING", + "AVAILABLE", + "DELETING", + "MODIFYING", + "UPDATING", + "DELETED", + "FAILED" + ] + }, + "String":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeys":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":1 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{"shape":"Arn"}, + "tags":{"shape":"RequestTagMap"} + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "retryAfterSeconds":{"shape":"Integer"} + }, + "exception":true, + "retryable":{"throttling":false} + }, + "TracingType":{ + "type":"string", + "enum":[ + "log", + "jaeger" + ] + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{"shape":"Arn"}, + "tagKeys":{"shape":"TagKeys"} + } + }, + "UpdateDbInstanceInput":{ + "type":"structure", + "required":["identifier"], + "members":{ + "identifier":{"shape":"DbInstanceIdentifier"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"} + } + }, + "UpdateDbInstanceOutput":{ + "type":"structure", + "required":[ + "id", + "name", + "arn", + "vpcSubnetIds" + ], + "members":{ + "id":{"shape":"DbInstanceId"}, + "name":{"shape":"DbInstanceName"}, + "arn":{"shape":"Arn"}, + "status":{"shape":"Status"}, + "endpoint":{"shape":"String"}, + "dbInstanceType":{"shape":"DbInstanceType"}, + "dbStorageType":{"shape":"DbStorageType"}, + "allocatedStorage":{"shape":"AllocatedStorage"}, + "deploymentType":{"shape":"DeploymentType"}, + "vpcSubnetIds":{"shape":"VpcSubnetIdList"}, + "publiclyAccessible":{"shape":"Boolean"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "dbParameterGroupIdentifier":{"shape":"DbParameterGroupIdentifier"}, + "availabilityZone":{"shape":"String"}, + "secondaryAvailabilityZone":{"shape":"String"}, + "logDeliveryConfiguration":{"shape":"LogDeliveryConfiguration"}, + "influxAuthParametersSecretArn":{"shape":"String"} + } + }, + "Username":{ + "type":"string", + "max":64, + "min":1, + "sensitive":true + }, + "ValidationException":{ + "type":"structure", + "required":[ + "message", + "reason" + ], + "members":{ + "message":{"shape":"String"}, + "reason":{"shape":"ValidationExceptionReason"} + }, + "exception":true + }, + "ValidationExceptionReason":{ + "type":"string", + "enum":[ + "FIELD_VALIDATION_FAILED", + "OTHER" + ] + }, + "VpcSecurityGroupId":{ + "type":"string", + "max":64, + "min":0, + "pattern":"sg-[a-z0-9]+" + }, + "VpcSecurityGroupIdList":{ + "type":"list", + "member":{"shape":"VpcSecurityGroupId"}, + "max":5, + "min":1 + }, + "VpcSubnetId":{ + "type":"string", + "max":64, + "min":0, + "pattern":"subnet-[a-z0-9]+" + }, + "VpcSubnetIdList":{ + "type":"list", + "member":{"shape":"VpcSubnetId"}, + "max":3, + "min":1 + } + } +} diff --git a/models/apis/timestream-influxdb/2023-01-27/docs-2.json b/models/apis/timestream-influxdb/2023-01-27/docs-2.json new file mode 100644 index 0000000000..4cdc702bd0 --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/docs-2.json @@ -0,0 +1,542 @@ +{ + "version": "2.0", + "service": "

Amazon Timestream for InfluxDB is a managed time-series database engine that makes it easy for application developers and DevOps teams to run InfluxDB databases on AWS for near real-time time-series applications using open-source APIs. With Amazon Timestream for InfluxDB, it is easy to set up, operate, and scale time-series workloads that can answer queries with single-digit millisecond query response time.

", + "operations": { + "CreateDbInstance": "

Creates a new Timestream for InfluxDB DB instance.

", + "CreateDbParameterGroup": "

Creates a new Timestream for InfluxDB DB parameter group to associate with DB instances.

", + "DeleteDbInstance": "

Deletes a Timestream for InfluxDB DB instance.

", + "GetDbInstance": "

Returns a Timestream for InfluxDB DB instance.

", + "GetDbParameterGroup": "

Returns a Timestream for InfluxDB DB parameter group.

", + "ListDbInstances": "

Returns a list of Timestream for InfluxDB DB instances.

", + "ListDbParameterGroups": "

Returns a list of Timestream for InfluxDB DB parameter groups.

", + "ListTagsForResource": "

A list of tags applied to the resource.

", + "TagResource": "

Tags are composed of a Key/Value pairs. You can use tags to categorize and track your Timestream for InfluxDB resources.

", + "UntagResource": "

Removes the tag from the specified resource.

", + "UpdateDbInstance": "

Updates a Timestream for InfluxDB DB instance.

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

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AllocatedStorage": { + "base": null, + "refs": { + "CreateDbInstanceInput$allocatedStorage": "

The amount of storage to allocate for your DB storage type in GiB (gibibytes).

", + "CreateDbInstanceOutput$allocatedStorage": "

The amount of storage allocated for your DB storage type (in gibibytes).

", + "DbInstanceSummary$allocatedStorage": "

The amount of storage to allocate for your DbStorageType in GiB (gibibytes).

", + "DeleteDbInstanceOutput$allocatedStorage": "

The amount of storage allocated for your DB storage type (in gibibytes).

", + "GetDbInstanceOutput$allocatedStorage": "

The amount of storage allocated for your DB storage type (in gibibytes).

", + "UpdateDbInstanceOutput$allocatedStorage": "

The amount of storage allocated for your DB storage type (in gibibytes).

" + } + }, + "Arn": { + "base": null, + "refs": { + "CreateDbInstanceOutput$arn": "

The Amazon Resource Name (ARN) of the DB instance.

", + "CreateDbParameterGroupOutput$arn": "

The Amazon Resource Name (ARM) of the DB parameter group.

", + "DbInstanceSummary$arn": "

The Amazon Resource Name (ARN) of the DB instance.

", + "DbParameterGroupSummary$arn": "

The Amazon Resource Name (ARN) of the DB parameter group.

", + "DeleteDbInstanceOutput$arn": "

The Amazon Resource Name (ARN) of the DB instance.

", + "GetDbInstanceOutput$arn": "

The Amazon Resource Name (ARN) of the DB instance.

", + "GetDbParameterGroupOutput$arn": "

The Amazon Resource Name (ARN) of the DB parameter group.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the tagged resource.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the tagged resource.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the tagged resource.

", + "UpdateDbInstanceOutput$arn": "

The Amazon Resource Name (ARN) of the DB instance.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "CreateDbInstanceInput$publiclyAccessible": "

Configures the DB instance with a public IP to facilitate access.

", + "CreateDbInstanceOutput$publiclyAccessible": "

Indicates if the DB instance has a public IP to facilitate access.

", + "DeleteDbInstanceOutput$publiclyAccessible": "

Indicates if the DB instance has a public IP to facilitate access.

", + "GetDbInstanceOutput$publiclyAccessible": "

Indicates if the DB instance has a public IP to facilitate access.

", + "InfluxDBv2Parameters$fluxLogEnabled": "

Include option to show detailed logs for Flux queries.

Default: false

", + "InfluxDBv2Parameters$noTasks": "

Disable the task scheduler. If problematic tasks prevent InfluxDB from starting, use this option to start InfluxDB without scheduling or executing tasks.

Default: false

", + "InfluxDBv2Parameters$metricsDisabled": "

Disable the HTTP /metrics endpoint which exposes internal InfluxDB metrics.

Default: false

", + "S3Configuration$enabled": "

Indicates whether log delivery to the S3 bucket is enabled.

", + "UpdateDbInstanceOutput$publiclyAccessible": "

Indicates if the DB instance has a public IP to facilitate access.

" + } + }, + "Bucket": { + "base": null, + "refs": { + "CreateDbInstanceInput$bucket": "

The name of the initial InfluxDB bucket. All InfluxDB data is stored in a bucket. A bucket combines the concept of a database and a retention period (the duration of time that each data point persists). A bucket belongs to an organization.

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

The request conflicts with an existing resource in Timestream for InfluxDB.

", + "refs": { + } + }, + "CreateDbInstanceInput": { + "base": null, + "refs": { + } + }, + "CreateDbInstanceOutput": { + "base": null, + "refs": { + } + }, + "CreateDbParameterGroupInput": { + "base": null, + "refs": { + } + }, + "CreateDbParameterGroupInputDescriptionString": { + "base": null, + "refs": { + "CreateDbParameterGroupInput$description": "

A description of the DB parameter group.

" + } + }, + "CreateDbParameterGroupOutput": { + "base": null, + "refs": { + } + }, + "DbInstanceId": { + "base": null, + "refs": { + "CreateDbInstanceOutput$id": "

A service-generated unique identifier.

", + "DbInstanceSummary$id": "

The service-generated unique identifier of the DB instance.

", + "DeleteDbInstanceOutput$id": "

A service-generated unique identifier.

", + "GetDbInstanceOutput$id": "

A service-generated unique identifier.

", + "UpdateDbInstanceOutput$id": "

A service-generated unique identifier.

" + } + }, + "DbInstanceIdentifier": { + "base": null, + "refs": { + "DeleteDbInstanceInput$identifier": "

The id of the DB instance.

", + "GetDbInstanceInput$identifier": "

The id of the DB instance.

", + "UpdateDbInstanceInput$identifier": "

The id of the DB instance.

" + } + }, + "DbInstanceName": { + "base": null, + "refs": { + "CreateDbInstanceInput$name": "

The name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands. This name will also be a prefix included in the endpoint. DB instance names must be unique per customer and per region.

", + "CreateDbInstanceOutput$name": "

The customer-supplied name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands.

", + "DbInstanceSummary$name": "

This customer-supplied name uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and AWS CLI commands.

", + "DeleteDbInstanceOutput$name": "

The customer-supplied name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands.

", + "GetDbInstanceOutput$name": "

The customer-supplied name that uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and CLI commands.

", + "UpdateDbInstanceOutput$name": "

This customer-supplied name uniquely identifies the DB instance when interacting with the Amazon Timestream for InfluxDB API and AWS CLI commands.

" + } + }, + "DbInstanceSummary": { + "base": "

Contains a summary of a DB instance.

", + "refs": { + "DbInstanceSummaryList$member": null + } + }, + "DbInstanceSummaryList": { + "base": null, + "refs": { + "ListDbInstancesOutput$items": "

A list of Timestream for InfluxDB DB instance summaries.

" + } + }, + "DbInstanceType": { + "base": null, + "refs": { + "CreateDbInstanceInput$dbInstanceType": "

The Timestream for InfluxDB DB instance type to run InfluxDB on.

", + "CreateDbInstanceOutput$dbInstanceType": "

The Timestream for InfluxDB instance type that InfluxDB runs on.

", + "DbInstanceSummary$dbInstanceType": "

The Timestream for InfluxDB instance type to run InfluxDB on.

", + "DeleteDbInstanceOutput$dbInstanceType": "

The Timestream for InfluxDB instance type that InfluxDB runs on.

", + "GetDbInstanceOutput$dbInstanceType": "

The Timestream for InfluxDB instance type that InfluxDB runs on.

", + "UpdateDbInstanceOutput$dbInstanceType": "

The Timestream for InfluxDB instance type that InfluxDB runs on.

" + } + }, + "DbParameterGroupId": { + "base": null, + "refs": { + "CreateDbParameterGroupOutput$id": "

A service-generated unique identifier.

", + "DbParameterGroupSummary$id": "

A service-generated unique identifier.

", + "GetDbParameterGroupOutput$id": "

A service-generated unique identifier.

" + } + }, + "DbParameterGroupIdentifier": { + "base": null, + "refs": { + "CreateDbInstanceInput$dbParameterGroupIdentifier": "

The id of the DB parameter group to assign to your DB instance. DB parameter groups specify how the database is configured. For example, DB parameter groups can specify the limit for query concurrency.

", + "CreateDbInstanceOutput$dbParameterGroupIdentifier": "

The id of the DB parameter group assigned to your DB instance.

", + "DeleteDbInstanceOutput$dbParameterGroupIdentifier": "

The id of the DB parameter group assigned to your DB instance.

", + "GetDbInstanceOutput$dbParameterGroupIdentifier": "

The id of the DB parameter group assigned to your DB instance.

", + "GetDbParameterGroupInput$identifier": "

The id of the DB parameter group.

", + "UpdateDbInstanceInput$dbParameterGroupIdentifier": "

The id of the DB parameter group to assign to your DB instance. DB parameter groups specify how the database is configured. For example, DB parameter groups can specify the limit for query concurrency.

", + "UpdateDbInstanceOutput$dbParameterGroupIdentifier": "

The id of the DB parameter group assigned to your DB instance.

" + } + }, + "DbParameterGroupName": { + "base": null, + "refs": { + "CreateDbParameterGroupInput$name": "

The name of the DB parameter group. The name must be unique per customer and per region.

", + "CreateDbParameterGroupOutput$name": "

The customer-supplied name that uniquely identifies the DB parameter group when interacting with the Amazon Timestream for InfluxDB API and CLI commands.

", + "DbParameterGroupSummary$name": "

This customer-supplied name uniquely identifies the parameter group.

", + "GetDbParameterGroupOutput$name": "

The customer-supplied name that uniquely identifies the DB parameter group when interacting with the Amazon Timestream for InfluxDB API and CLI commands.

" + } + }, + "DbParameterGroupSummary": { + "base": "

Contains a summary of a DB parameter group.

", + "refs": { + "DbParameterGroupSummaryList$member": null + } + }, + "DbParameterGroupSummaryList": { + "base": null, + "refs": { + "ListDbParameterGroupsOutput$items": "

A list of Timestream for InfluxDB DB parameter group summaries.

" + } + }, + "DbStorageType": { + "base": null, + "refs": { + "CreateDbInstanceInput$dbStorageType": "

The Timestream for InfluxDB DB storage type to read and write InfluxDB data.

You can choose between 3 different types of provisioned Influx IOPS included storage according to your workloads requirements:

", + "CreateDbInstanceOutput$dbStorageType": "

The Timestream for InfluxDB DB storage type that InfluxDB stores data on.

", + "DbInstanceSummary$dbStorageType": "

The storage type for your DB instance.

", + "DeleteDbInstanceOutput$dbStorageType": "

The Timestream for InfluxDB DB storage type that InfluxDB stores data on.

", + "GetDbInstanceOutput$dbStorageType": "

The Timestream for InfluxDB DB storage type that InfluxDB stores data on.

", + "UpdateDbInstanceOutput$dbStorageType": "

The Timestream for InfluxDB DB storage type that InfluxDB stores data on.

" + } + }, + "DeleteDbInstanceInput": { + "base": null, + "refs": { + } + }, + "DeleteDbInstanceOutput": { + "base": null, + "refs": { + } + }, + "DeploymentType": { + "base": null, + "refs": { + "CreateDbInstanceInput$deploymentType": "

Specifies whether the DB instance will be deployed as a standalone instance or with a Multi-AZ standby for high availability.

", + "CreateDbInstanceOutput$deploymentType": "

Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.

", + "DbInstanceSummary$deploymentType": "

Single-Instance or with a MultiAZ Standby for High availability.

", + "DeleteDbInstanceOutput$deploymentType": "

Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.

", + "GetDbInstanceOutput$deploymentType": "

Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.

", + "UpdateDbInstanceOutput$deploymentType": "

Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or with a MultiAZ Standby for High availability.

" + } + }, + "GetDbInstanceInput": { + "base": null, + "refs": { + } + }, + "GetDbInstanceOutput": { + "base": null, + "refs": { + } + }, + "GetDbParameterGroupInput": { + "base": null, + "refs": { + } + }, + "GetDbParameterGroupOutput": { + "base": null, + "refs": { + } + }, + "InfluxDBv2Parameters": { + "base": "

All the customer-modifiable InfluxDB v2 parameters in Timestream for InfluxDB.

", + "refs": { + "Parameters$InfluxDBv2": "

All the customer-modifiable InfluxDB v2 parameters in Timestream for InfluxDB.

" + } + }, + "InfluxDBv2ParametersQueryConcurrencyInteger": { + "base": null, + "refs": { + "InfluxDBv2Parameters$queryConcurrency": "

Number of queries allowed to execute concurrently. Setting to 0 allows an unlimited number of concurrent queries.

Default: 0

" + } + }, + "InfluxDBv2ParametersQueryQueueSizeInteger": { + "base": null, + "refs": { + "InfluxDBv2Parameters$queryQueueSize": "

Maximum number of queries allowed in execution queue. When queue limit is reached, new queries are rejected. Setting to 0 allows an unlimited number of queries in the queue.

Default: 0

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

The number of seconds the caller should wait before retrying.

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

The request processing has failed because of an unknown error, exception or failure.

", + "refs": { + } + }, + "ListDbInstancesInput": { + "base": null, + "refs": { + } + }, + "ListDbInstancesOutput": { + "base": null, + "refs": { + } + }, + "ListDbParameterGroupsInput": { + "base": null, + "refs": { + } + }, + "ListDbParameterGroupsOutput": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "LogDeliveryConfiguration": { + "base": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

", + "refs": { + "CreateDbInstanceInput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to a specified S3 bucket.

", + "CreateDbInstanceOutput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

", + "DeleteDbInstanceOutput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

", + "GetDbInstanceOutput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

", + "UpdateDbInstanceInput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

", + "UpdateDbInstanceOutput$logDeliveryConfiguration": "

Configuration for sending InfluxDB engine logs to send to specified S3 bucket.

" + } + }, + "LogLevel": { + "base": null, + "refs": { + "InfluxDBv2Parameters$logLevel": "

Log output level. InfluxDB outputs log entries with severity levels greater than or equal to the level specified.

Default: info

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

The maximum number of items to return in the output. If the total number of items available is more than the value specified, a NextToken is provided in the output. To resume pagination, provide the NextToken value as argument of a subsequent API invocation.

", + "ListDbParameterGroupsInput$maxResults": "

The maximum number of items to return in the output. If the total number of items available is more than the value specified, a NextToken is provided in the output. To resume pagination, provide the NextToken value as argument of a subsequent API invocation.

" + } + }, + "NextToken": { + "base": null, + "refs": { + "ListDbInstancesInput$nextToken": "

The pagination token. To resume pagination, provide the NextToken value as argument of a subsequent API invocation.

", + "ListDbInstancesOutput$nextToken": "

Token from a previous call of the operation. When this value is provided, the service returns results from where the previous response left off.

", + "ListDbParameterGroupsInput$nextToken": "

The pagination token. To resume pagination, provide the NextToken value as argument of a subsequent API invocation.

", + "ListDbParameterGroupsOutput$nextToken": "

Token from a previous call of the operation. When this value is provided, the service returns results from where the previous response left off.

" + } + }, + "Organization": { + "base": null, + "refs": { + "CreateDbInstanceInput$organization": "

The name of the initial organization for the initial admin user in InfluxDB. An InfluxDB organization is a workspace for a group of users.

" + } + }, + "Parameters": { + "base": "

The parameters that comprise the parameter group.

", + "refs": { + "CreateDbParameterGroupInput$parameters": "

A list of the parameters that comprise the DB parameter group.

", + "CreateDbParameterGroupOutput$parameters": "

A list of the parameters that comprise the DB parameter group.

", + "GetDbParameterGroupOutput$parameters": "

The parameters that comprise the DB parameter group.

" + } + }, + "Password": { + "base": null, + "refs": { + "CreateDbInstanceInput$password": "

The password of the initial admin user created in InfluxDB. This password will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in AWS SecretManager in your account.

" + } + }, + "RequestTagMap": { + "base": null, + "refs": { + "CreateDbInstanceInput$tags": "

A list of key-value pairs to associate with the DB instance.

", + "CreateDbParameterGroupInput$tags": "

A list of key-value pairs to associate with the DB parameter group.

", + "TagResourceRequest$tags": "

A list of tags used to categorize and track resources.

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

The requested resource was not found or does not exist.

", + "refs": { + } + }, + "ResponseTagMap": { + "base": null, + "refs": { + "ListTagsForResourceResponse$tags": "

A list of tags used to categorize and track resources.

" + } + }, + "S3Configuration": { + "base": "

Configuration for S3 bucket log delivery.

", + "refs": { + "LogDeliveryConfiguration$s3Configuration": "

Configuration for S3 bucket log delivery.

" + } + }, + "S3ConfigurationBucketNameString": { + "base": null, + "refs": { + "S3Configuration$bucketName": "

The name of the S3 bucket to deliver logs to.

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

The request exceeds the service quota.

", + "refs": { + } + }, + "Status": { + "base": null, + "refs": { + "CreateDbInstanceOutput$status": "

The status of the DB instance.

", + "DbInstanceSummary$status": "

The status of the DB instance.

", + "DeleteDbInstanceOutput$status": "

The status of the DB instance.

", + "GetDbInstanceOutput$status": "

The status of the DB instance.

", + "UpdateDbInstanceOutput$status": "

The status of the DB instance.

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "ConflictException$resourceId": "

The identifier for the Timestream for InfluxDB resource associated with the request.

", + "ConflictException$resourceType": "

The type of Timestream for InfluxDB resource associated with the request.

", + "CreateDbInstanceOutput$endpoint": "

The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086.

", + "CreateDbInstanceOutput$availabilityZone": "

The Availability Zone in which the DB instance resides.

", + "CreateDbInstanceOutput$secondaryAvailabilityZone": "

The Availability Zone in which the standby instance is located when deploying with a MultiAZ standby instance.

", + "CreateDbInstanceOutput$influxAuthParametersSecretArn": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing the initial InfluxDB authorization parameters. The secret value is a JSON formatted key-value pair holding InfluxDB authorization values: organization, bucket, username, and password.

", + "CreateDbParameterGroupOutput$description": "

The description of the DB parameter group.

", + "DbInstanceSummary$endpoint": "

The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086.

", + "DbParameterGroupSummary$description": "

A description of the DB parameter group.

", + "DeleteDbInstanceOutput$endpoint": "

The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086.

", + "DeleteDbInstanceOutput$availabilityZone": "

The Availability Zone in which the DB instance resides.

", + "DeleteDbInstanceOutput$secondaryAvailabilityZone": "

The Availability Zone in which the standby instance is located when deploying with a MultiAZ standby instance.

", + "DeleteDbInstanceOutput$influxAuthParametersSecretArn": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing the initial InfluxDB authorization parameters. The secret value is a JSON formatted key-value pair holding InfluxDB authorization values: organization, bucket, username, and password.

", + "GetDbInstanceOutput$endpoint": "

The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086.

", + "GetDbInstanceOutput$availabilityZone": "

The Availability Zone in which the DB instance resides.

", + "GetDbInstanceOutput$secondaryAvailabilityZone": "

The Availability Zone in which the standby instance is located when deploying with a MultiAZ standby instance.

", + "GetDbInstanceOutput$influxAuthParametersSecretArn": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing the initial InfluxDB authorization parameters. The secret value is a JSON formatted key-value pair holding InfluxDB authorization values: organization, bucket, username, and password.

", + "GetDbParameterGroupOutput$description": "

A description of the DB parameter group.

", + "InternalServerException$message": null, + "ResourceNotFoundException$message": null, + "ResourceNotFoundException$resourceId": "

The identifier for the Timestream for InfluxDB resource associated with the request.

", + "ResourceNotFoundException$resourceType": "

The type of Timestream for InfluxDB resource associated with the request.

", + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "UpdateDbInstanceOutput$endpoint": "

The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086.

", + "UpdateDbInstanceOutput$availabilityZone": "

The Availability Zone in which the DB instance resides.

", + "UpdateDbInstanceOutput$secondaryAvailabilityZone": "

The Availability Zone in which the standby instance is located when deploying with a MultiAZ standby instance.

", + "UpdateDbInstanceOutput$influxAuthParametersSecretArn": "

The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing the initial InfluxDB authorization parameters. The secret value is a JSON formatted key-value pair holding InfluxDB authorization values: organization, bucket, username, and password.

", + "ValidationException$message": null + } + }, + "TagKey": { + "base": null, + "refs": { + "RequestTagMap$key": null, + "ResponseTagMap$key": null, + "TagKeys$member": null + } + }, + "TagKeys": { + "base": null, + "refs": { + "UntagResourceRequest$tagKeys": "

The keys used to identify the tags.

" + } + }, + "TagResourceRequest": { + "base": null, + "refs": { + } + }, + "TagValue": { + "base": null, + "refs": { + "RequestTagMap$value": null, + "ResponseTagMap$value": null + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "TracingType": { + "base": null, + "refs": { + "InfluxDBv2Parameters$tracingType": "

Enable tracing in InfluxDB and specifies the tracing type. Tracing is disabled by default.

" + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UpdateDbInstanceInput": { + "base": null, + "refs": { + } + }, + "UpdateDbInstanceOutput": { + "base": null, + "refs": { + } + }, + "Username": { + "base": null, + "refs": { + "CreateDbInstanceInput$username": "

The username of the initial admin user created in InfluxDB. Must start with a letter and can't end with a hyphen or contain two consecutive hyphens. For example, my-user1. This username will allow you to access the InfluxDB UI to perform various administrative tasks and also use the InfluxDB CLI to create an operator token. These attributes will be stored in a Secret created in Amazon Secrets Manager in your account.

" + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by Timestream for InfluxDB.

", + "refs": { + } + }, + "ValidationExceptionReason": { + "base": null, + "refs": { + "ValidationException$reason": "

The reason that validation failed.

" + } + }, + "VpcSecurityGroupId": { + "base": null, + "refs": { + "VpcSecurityGroupIdList$member": null + } + }, + "VpcSecurityGroupIdList": { + "base": null, + "refs": { + "CreateDbInstanceInput$vpcSecurityGroupIds": "

A list of VPC security group IDs to associate with the DB instance.

", + "CreateDbInstanceOutput$vpcSecurityGroupIds": "

A list of VPC security group IDs associated with the DB instance.

", + "DeleteDbInstanceOutput$vpcSecurityGroupIds": "

A list of VPC security group IDs associated with the DB instance.

", + "GetDbInstanceOutput$vpcSecurityGroupIds": "

A list of VPC security group IDs associated with the DB instance.

", + "UpdateDbInstanceOutput$vpcSecurityGroupIds": "

A list of VPC security group IDs associated with the DB instance.

" + } + }, + "VpcSubnetId": { + "base": null, + "refs": { + "VpcSubnetIdList$member": null + } + }, + "VpcSubnetIdList": { + "base": null, + "refs": { + "CreateDbInstanceInput$vpcSubnetIds": "

A list of VPC subnet IDs to associate with the DB instance. Provide at least two VPC subnet IDs in different availability zones when deploying with a Multi-AZ standby.

", + "CreateDbInstanceOutput$vpcSubnetIds": "

A list of VPC subnet IDs associated with the DB instance.

", + "DeleteDbInstanceOutput$vpcSubnetIds": "

A list of VPC subnet IDs associated with the DB instance.

", + "GetDbInstanceOutput$vpcSubnetIds": "

A list of VPC subnet IDs associated with the DB instance.

", + "UpdateDbInstanceOutput$vpcSubnetIds": "

A list of VPC subnet IDs associated with the DB instance.

" + } + } + } +} diff --git a/models/apis/timestream-influxdb/2023-01-27/endpoint-rule-set-1.json b/models/apis/timestream-influxdb/2023-01-27/endpoint-rule-set-1.json new file mode 100644 index 0000000000..d1f1313596 --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/endpoint-rule-set-1.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://timestream-influxdb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://timestream-influxdb-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://timestream-influxdb.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://timestream-influxdb.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/models/apis/timestream-influxdb/2023-01-27/endpoint-tests-1.json b/models/apis/timestream-influxdb/2023-01-27/endpoint-tests-1.json new file mode 100644 index 0000000000..c0d089c25b --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/endpoint-tests-1.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://timestream-influxdb.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/timestream-influxdb/2023-01-27/examples-1.json b/models/apis/timestream-influxdb/2023-01-27/examples-1.json new file mode 100644 index 0000000000..0ea7e3b0bb --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/timestream-influxdb/2023-01-27/paginators-1.json b/models/apis/timestream-influxdb/2023-01-27/paginators-1.json new file mode 100644 index 0000000000..999388e155 --- /dev/null +++ b/models/apis/timestream-influxdb/2023-01-27/paginators-1.json @@ -0,0 +1,16 @@ +{ + "pagination": { + "ListDbInstances": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + }, + "ListDbParameterGroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "items" + } + } +} diff --git a/service/amplify/api.go b/service/amplify/api.go index d92ddded82..b69a8a553e 100644 --- a/service/amplify/api.go +++ b/service/amplify/api.go @@ -149,6 +149,12 @@ func (c *Amplify) CreateBackendEnvironmentRequest(input *CreateBackendEnvironmen // // Creates a new backend environment for an Amplify app. // +// This API is available only to Amplify Gen 1 applications where the backend +// is created using Amplify Studio or the Amplify command line interface (CLI). +// This API isn’t available to applications created using the Amplify Gen +// 2 public preview. When you deploy an application with Amplify Gen 2, you +// provision the app's backend infrastructure using Typescript code. +// // 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. @@ -707,6 +713,12 @@ func (c *Amplify) DeleteBackendEnvironmentRequest(input *DeleteBackendEnvironmen // // Deletes a backend environment for an Amplify app. // +// This API is available only to Amplify Gen 1 applications where the backend +// was created using Amplify Studio or the Amplify command line interface (CLI). +// This API isn’t available to applications created using the Amplify Gen +// 2 public preview. When you deploy an application with Amplify Gen 2, you +// provision the app's backend infrastructure using Typescript code. +// // 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. @@ -1430,6 +1442,12 @@ func (c *Amplify) GetBackendEnvironmentRequest(input *GetBackendEnvironmentInput // // Returns a backend environment for an Amplify app. // +// This API is available only to Amplify Gen 1 applications where the backend +// was created using Amplify Studio or the Amplify command line interface (CLI). +// This API isn’t available to applications created using the Amplify Gen +// 2 public preview. When you deploy an application with Amplify Gen 2, you +// provision the app's backend infrastructure using Typescript code. +// // 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. @@ -2106,6 +2124,12 @@ func (c *Amplify) ListBackendEnvironmentsRequest(input *ListBackendEnvironmentsI // // Lists the backend environments for an Amplify app. // +// This API is available only to Amplify Gen 1 applications where the backend +// was created using Amplify Studio or the Amplify command line interface (CLI). +// This API isn’t available to applications created using the Amplify Gen +// 2 public preview. When you deploy an application with Amplify Gen 2, you +// provision the app's backend infrastructure using Typescript code. +// // 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. diff --git a/service/ec2instanceconnect/api.go b/service/ec2instanceconnect/api.go index 7c0e181355..939130465d 100644 --- a/service/ec2instanceconnect/api.go +++ b/service/ec2instanceconnect/api.go @@ -218,6 +218,10 @@ func (c *EC2InstanceConnect) SendSerialConsoleSSHPublicKeyRequest(input *SendSer // - EC2InstanceUnavailableException // The instance is currently unavailable. Wait a few minutes and try again. // +// - SerialConsoleSessionUnsupportedException +// Your instance's BIOS version is unsupported for serial console connection. +// Reboot your instance to update its BIOS, and then try again to connect. +// // See also, https://docs.aws.amazon.com/goto/WebAPI/ec2-instance-connect-2018-04-02/SendSerialConsoleSSHPublicKey func (c *EC2InstanceConnect) SendSerialConsoleSSHPublicKey(input *SendSerialConsoleSSHPublicKeyInput) (*SendSerialConsoleSSHPublicKeyOutput, error) { req, out := c.SendSerialConsoleSSHPublicKeyRequest(input) @@ -1082,6 +1086,71 @@ func (s *SerialConsoleSessionUnavailableException) RequestID() string { return s.RespMetadata.RequestID } +// Your instance's BIOS version is unsupported for serial console connection. +// Reboot your instance to update its BIOS, and then try again to connect. +type SerialConsoleSessionUnsupportedException 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 SerialConsoleSessionUnsupportedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SerialConsoleSessionUnsupportedException) GoString() string { + return s.String() +} + +func newErrorSerialConsoleSessionUnsupportedException(v protocol.ResponseMetadata) error { + return &SerialConsoleSessionUnsupportedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *SerialConsoleSessionUnsupportedException) Code() string { + return "SerialConsoleSessionUnsupportedException" +} + +// Message returns the exception's message. +func (s *SerialConsoleSessionUnsupportedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *SerialConsoleSessionUnsupportedException) OrigErr() error { + return nil +} + +func (s *SerialConsoleSessionUnsupportedException) 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 *SerialConsoleSessionUnsupportedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *SerialConsoleSessionUnsupportedException) RequestID() string { + return s.RespMetadata.RequestID +} + // The service encountered an error. Follow the instructions in the error message // and try again. type ServiceException struct { diff --git a/service/ec2instanceconnect/doc.go b/service/ec2instanceconnect/doc.go index 948692eadf..5308e15240 100644 --- a/service/ec2instanceconnect/doc.go +++ b/service/ec2instanceconnect/doc.go @@ -3,9 +3,16 @@ // Package ec2instanceconnect provides the client and types for making API // requests to AWS EC2 Instance Connect. // -// Amazon EC2 Instance Connect enables system administrators to publish one-time -// use SSH public keys to EC2, providing users a simple and secure way to connect -// to their instances. +// This is the Amazon EC2 Instance Connect API Reference. It provides descriptions, +// syntax, and usage examples for each of the actions for Amazon EC2 Instance +// Connect. Amazon EC2 Instance Connect enables system administrators to publish +// one-time use SSH public keys to EC2, providing users a simple and secure +// way to connect to their instances. +// +// To view the Amazon EC2 Instance Connect content in the Amazon EC2 User Guide, +// see Connect to your Linux instance using EC2 Instance Connect (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect.html). +// +// For Amazon EC2 APIs, see the Amazon EC2 API Reference (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Welcome.html). // // See https://docs.aws.amazon.com/goto/WebAPI/ec2-instance-connect-2018-04-02 for more information on this service. // diff --git a/service/ec2instanceconnect/errors.go b/service/ec2instanceconnect/errors.go index b08b35aff8..ef095c415b 100644 --- a/service/ec2instanceconnect/errors.go +++ b/service/ec2instanceconnect/errors.go @@ -70,6 +70,13 @@ const ( // Unable to start a serial console session. Please try again. ErrCodeSerialConsoleSessionUnavailableException = "SerialConsoleSessionUnavailableException" + // ErrCodeSerialConsoleSessionUnsupportedException for service response error code + // "SerialConsoleSessionUnsupportedException". + // + // Your instance's BIOS version is unsupported for serial console connection. + // Reboot your instance to update its BIOS, and then try again to connect. + ErrCodeSerialConsoleSessionUnsupportedException = "SerialConsoleSessionUnsupportedException" + // ErrCodeServiceException for service response error code // "ServiceException". // @@ -96,6 +103,7 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "SerialConsoleAccessDisabledException": newErrorSerialConsoleAccessDisabledException, "SerialConsoleSessionLimitExceededException": newErrorSerialConsoleSessionLimitExceededException, "SerialConsoleSessionUnavailableException": newErrorSerialConsoleSessionUnavailableException, + "SerialConsoleSessionUnsupportedException": newErrorSerialConsoleSessionUnsupportedException, "ServiceException": newErrorServiceException, "ThrottlingException": newErrorThrottlingException, } diff --git a/service/elbv2/api.go b/service/elbv2/api.go index 0f530edec9..ff58372dce 100644 --- a/service/elbv2/api.go +++ b/service/elbv2/api.go @@ -9259,6 +9259,9 @@ type LoadBalancerAttribute struct { // * idle_timeout.timeout_seconds - The idle timeout value, in seconds. The // valid range is 1-4000 seconds. The default is 60 seconds. // + // * client_keep_alive.seconds - The client keep alive value, in seconds. + // The valid range is 60-604800 seconds. The default is 3600 seconds. + // // * connection_logs.s3.enabled - Indicates whether connection logs are enabled. // The value is true or false. The default is false. // diff --git a/service/fis/api.go b/service/fis/api.go index 808516b542..7a96048f20 100644 --- a/service/fis/api.go +++ b/service/fis/api.go @@ -73,7 +73,7 @@ func (c *FIS) CreateExperimentTemplateRequest(input *CreateExperimentTemplateInp // stop condition as a CloudWatch alarm. // // For more information, see experiment templates (https://docs.aws.amazon.com/fis/latest/userguide/experiment-templates.html) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -165,7 +165,7 @@ func (c *FIS) CreateTargetAccountConfigurationRequest(input *CreateTargetAccount // Creates a target account configuration for the experiment template. A target // account configuration is required when accountTargeting of experimentOptions // is set to multi-account. For more information, see experiment options (https://docs.aws.amazon.com/fis/latest/userguide/experiment-options.html) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2347,10 +2347,13 @@ func (c *FIS) UpdateTargetAccountConfigurationWithContext(ctx aws.Context, input } // Describes an action. For more information, see FIS actions (https://docs.aws.amazon.com/fis/latest/userguide/fis-actions-reference.html) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. type Action struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the action. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The description for the action. Description *string `locationName:"description" type:"string"` @@ -2385,6 +2388,12 @@ func (s Action) GoString() string { return s.String() } +// SetArn sets the Arn field's value. +func (s *Action) SetArn(v string) *Action { + s.Arn = &v + return s +} + // SetDescription sets the Description field's value. func (s *Action) SetDescription(v string) *Action { s.Description = &v @@ -2460,6 +2469,9 @@ func (s *ActionParameter) SetRequired(v bool) *ActionParameter { type ActionSummary struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the action. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The description for the action. Description *string `locationName:"description" type:"string"` @@ -2491,6 +2503,12 @@ func (s ActionSummary) GoString() string { return s.String() } +// SetArn sets the Arn field's value. +func (s *ActionSummary) SetArn(v string) *ActionSummary { + s.Arn = &v + return s +} + // SetDescription sets the Description field's value. func (s *ActionSummary) SetDescription(v string) *ActionSummary { s.Description = &v @@ -2614,7 +2632,7 @@ func (s *ConflictException) RequestID() string { // Specifies an action for an experiment template. // // For more information, see Actions (https://docs.aws.amazon.com/fis/latest/userguide/actions.html) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. type CreateExperimentTemplateActionInput struct { _ struct{} `type:"structure"` @@ -3088,7 +3106,7 @@ func (s *CreateExperimentTemplateStopConditionInput) SetValue(v string) *CreateE // ARNs and tags. // // For more information, see Targets (https://docs.aws.amazon.com/fis/latest/userguide/targets.html) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. type CreateExperimentTemplateTargetInput struct { _ struct{} `type:"structure"` @@ -3211,7 +3229,7 @@ func (s *CreateExperimentTemplateTargetInput) SetSelectionMode(v string) *Create type CreateTargetAccountConfigurationInput struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` @@ -3427,7 +3445,7 @@ func (s *DeleteExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemp type DeleteTargetAccountConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` @@ -3528,6 +3546,9 @@ type Experiment struct { // The actions for the experiment. Actions map[string]*ExperimentAction `locationName:"actions" type:"map"` + // The Amazon Resource Name (ARN) of the experiment. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The time that the experiment was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` @@ -3593,6 +3614,12 @@ func (s *Experiment) SetActions(v map[string]*ExperimentAction) *Experiment { return s } +// SetArn sets the Arn field's value. +func (s *Experiment) SetArn(v string) *Experiment { + s.Arn = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *Experiment) SetCreationTime(v time.Time) *Experiment { s.CreationTime = &v @@ -3897,6 +3924,10 @@ type ExperimentOptions struct { // The account targeting setting for an experiment. AccountTargeting *string `locationName:"accountTargeting" type:"string" enum:"AccountTargeting"` + // The actions mode of the experiment that is set from the StartExperiment API + // command. + ActionsMode *string `locationName:"actionsMode" type:"string" enum:"ActionsMode"` + // The empty target resolution mode for an experiment. EmptyTargetResolutionMode *string `locationName:"emptyTargetResolutionMode" type:"string" enum:"EmptyTargetResolutionMode"` } @@ -3925,6 +3956,12 @@ func (s *ExperimentOptions) SetAccountTargeting(v string) *ExperimentOptions { return s } +// SetActionsMode sets the ActionsMode field's value. +func (s *ExperimentOptions) SetActionsMode(v string) *ExperimentOptions { + s.ActionsMode = &v + return s +} + // SetEmptyTargetResolutionMode sets the EmptyTargetResolutionMode field's value. func (s *ExperimentOptions) SetEmptyTargetResolutionMode(v string) *ExperimentOptions { s.EmptyTargetResolutionMode = &v @@ -4058,9 +4095,15 @@ func (s *ExperimentStopCondition) SetValue(v string) *ExperimentStopCondition { type ExperimentSummary struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the experiment. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The time that the experiment was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` + // The experiment options for the experiment. + ExperimentOptions *ExperimentOptions `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. ExperimentTemplateId *string `locationName:"experimentTemplateId" type:"string"` @@ -4092,12 +4135,24 @@ func (s ExperimentSummary) GoString() string { return s.String() } +// SetArn sets the Arn field's value. +func (s *ExperimentSummary) SetArn(v string) *ExperimentSummary { + s.Arn = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *ExperimentSummary) SetCreationTime(v time.Time) *ExperimentSummary { s.CreationTime = &v return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *ExperimentSummary) SetExperimentOptions(v *ExperimentOptions) *ExperimentSummary { + s.ExperimentOptions = v + return s +} + // SetExperimentTemplateId sets the ExperimentTemplateId field's value. func (s *ExperimentSummary) SetExperimentTemplateId(v string) *ExperimentSummary { s.ExperimentTemplateId = &v @@ -4203,7 +4258,7 @@ func (s *ExperimentTarget) SetSelectionMode(v string) *ExperimentTarget { type ExperimentTargetAccountConfiguration struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. AccountId *string `locationName:"accountId" min:"12" type:"string"` // The description of the target account. @@ -4253,7 +4308,7 @@ func (s *ExperimentTargetAccountConfiguration) SetRoleArn(v string) *ExperimentT type ExperimentTargetAccountConfigurationSummary struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. AccountId *string `locationName:"accountId" min:"12" type:"string"` // The description of the target account. @@ -4347,6 +4402,9 @@ type ExperimentTemplate struct { // The actions for the experiment. Actions map[string]*ExperimentTemplateAction `locationName:"actions" type:"map"` + // The Amazon Resource Name (ARN) of the experiment template. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The time the experiment template was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` @@ -4405,6 +4463,12 @@ func (s *ExperimentTemplate) SetActions(v map[string]*ExperimentTemplateAction) return s } +// SetArn sets the Arn field's value. +func (s *ExperimentTemplate) SetArn(v string) *ExperimentTemplate { + s.Arn = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *ExperimentTemplate) SetCreationTime(v time.Time) *ExperimentTemplate { s.CreationTime = &v @@ -4862,6 +4926,9 @@ func (s *ExperimentTemplateStopCondition) SetValue(v string) *ExperimentTemplate type ExperimentTemplateSummary struct { _ struct{} `type:"structure"` + // The Amazon Resource Name (ARN) of the experiment template. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The time that the experiment template was created. CreationTime *time.Time `locationName:"creationTime" type:"timestamp"` @@ -4896,6 +4963,12 @@ func (s ExperimentTemplateSummary) GoString() string { return s.String() } +// SetArn sets the Arn field's value. +func (s *ExperimentTemplateSummary) SetArn(v string) *ExperimentTemplateSummary { + s.Arn = &v + return s +} + // SetCreationTime sets the CreationTime field's value. func (s *ExperimentTemplateSummary) SetCreationTime(v time.Time) *ExperimentTemplateSummary { s.CreationTime = &v @@ -5047,7 +5120,7 @@ func (s *ExperimentTemplateTargetFilter) SetValues(v []*string) *ExperimentTempl // Specifies a filter used for the target resource input in an experiment template. // // For more information, see Resource filters (https://docs.aws.amazon.com/fis/latest/userguide/targets.html#target-filters) -// in the Fault Injection Simulator User Guide. +// in the Fault Injection Service User Guide. type ExperimentTemplateTargetInputFilter struct { _ struct{} `type:"structure"` @@ -5271,7 +5344,7 @@ func (s *GetExperimentOutput) SetExperiment(v *Experiment) *GetExperimentOutput type GetExperimentTargetAccountConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` @@ -5448,7 +5521,7 @@ func (s *GetExperimentTemplateOutput) SetExperimentTemplate(v *ExperimentTemplat type GetTargetAccountConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` @@ -6047,6 +6120,9 @@ func (s *ListExperimentTemplatesOutput) SetNextToken(v string) *ListExperimentTe type ListExperimentsInput struct { _ struct{} `type:"structure" nopayload:"true"` + // The ID of the experiment template. + ExperimentTemplateId *string `location:"querystring" locationName:"experimentTemplateId" type:"string"` + // 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"` @@ -6089,6 +6165,12 @@ func (s *ListExperimentsInput) Validate() error { return nil } +// SetExperimentTemplateId sets the ExperimentTemplateId field's value. +func (s *ListExperimentsInput) SetExperimentTemplateId(v string) *ListExperimentsInput { + s.ExperimentTemplateId = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListExperimentsInput) SetMaxResults(v int64) *ListExperimentsInput { s.MaxResults = &v @@ -6613,6 +6695,38 @@ func (s *ServiceQuotaExceededException) RequestID() string { return s.RespMetadata.RequestID } +// Specifies experiment options for running an experiment. +type StartExperimentExperimentOptionsInput_ struct { + _ struct{} `type:"structure"` + + // Specifies the actions mode for experiment options. + ActionsMode *string `locationName:"actionsMode" type:"string" enum:"ActionsMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartExperimentExperimentOptionsInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartExperimentExperimentOptionsInput_) GoString() string { + return s.String() +} + +// SetActionsMode sets the ActionsMode field's value. +func (s *StartExperimentExperimentOptionsInput_) SetActionsMode(v string) *StartExperimentExperimentOptionsInput_ { + s.ActionsMode = &v + return s +} + type StartExperimentInput struct { _ struct{} `type:"structure"` @@ -6620,6 +6734,9 @@ type StartExperimentInput struct { // of the request. ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + // The experiment options for running the experiment. + ExperimentOptions *StartExperimentExperimentOptionsInput_ `locationName:"experimentOptions" type:"structure"` + // The ID of the experiment template. // // ExperimentTemplateId is a required field @@ -6669,6 +6786,12 @@ func (s *StartExperimentInput) SetClientToken(v string) *StartExperimentInput { return s } +// SetExperimentOptions sets the ExperimentOptions field's value. +func (s *StartExperimentInput) SetExperimentOptions(v *StartExperimentExperimentOptionsInput_) *StartExperimentInput { + s.ExperimentOptions = v + return s +} + // SetExperimentTemplateId sets the ExperimentTemplateId field's value. func (s *StartExperimentInput) SetExperimentTemplateId(v string) *StartExperimentInput { s.ExperimentTemplateId = &v @@ -6881,7 +7004,7 @@ func (s TagResourceOutput) GoString() string { type TargetAccountConfiguration struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. AccountId *string `locationName:"accountId" min:"12" type:"string"` // The description of the target account. @@ -6931,7 +7054,7 @@ func (s *TargetAccountConfiguration) SetRoleArn(v string) *TargetAccountConfigur type TargetAccountConfigurationSummary struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. AccountId *string `locationName:"accountId" min:"12" type:"string"` // The description of the target account. @@ -7707,7 +7830,7 @@ func (s *UpdateExperimentTemplateTargetInput) SetSelectionMode(v string) *Update type UpdateTargetAccountConfigurationInput struct { _ struct{} `type:"structure"` - // The AWS account ID of the target account. + // The Amazon Web Services account ID of the target account. // // AccountId is a required field AccountId *string `location:"uri" locationName:"accountId" min:"12" type:"string" required:"true"` @@ -7903,6 +8026,22 @@ func AccountTargeting_Values() []string { } } +const ( + // ActionsModeSkipAll is a ActionsMode enum value + ActionsModeSkipAll = "skip-all" + + // ActionsModeRunAll is a ActionsMode enum value + ActionsModeRunAll = "run-all" +) + +// ActionsMode_Values returns all elements of the ActionsMode enum +func ActionsMode_Values() []string { + return []string{ + ActionsModeSkipAll, + ActionsModeRunAll, + } +} + const ( // EmptyTargetResolutionModeFail is a EmptyTargetResolutionMode enum value EmptyTargetResolutionModeFail = "fail" diff --git a/service/fis/doc.go b/service/fis/doc.go index c94844c58c..bdaa1be873 100644 --- a/service/fis/doc.go +++ b/service/fis/doc.go @@ -3,9 +3,9 @@ // Package fis provides the client and types for making API // requests to AWS Fault Injection Simulator. // -// Fault Injection Simulator is a managed service that enables you to perform +// Fault Injection Service is a managed service that enables you to perform // fault injection experiments on your Amazon Web Services workloads. For more -// information, see the Fault Injection Simulator User Guide (https://docs.aws.amazon.com/fis/latest/userguide/). +// information, see the Fault Injection Service User Guide (https://docs.aws.amazon.com/fis/latest/userguide/). // // See https://docs.aws.amazon.com/goto/WebAPI/fis-2020-12-01 for more information on this service. // diff --git a/service/rds/api.go b/service/rds/api.go index 2c2045b304..b335bdedbb 100644 --- a/service/rds/api.go +++ b/service/rds/api.go @@ -23582,7 +23582,10 @@ type CreateDBInstanceInput struct { // RDS for Db2 // // The name of the database to create when the DB instance is created. If this - // parameter isn't specified, no database is created in the DB instance. + // parameter isn't specified, no database is created in the DB instance. In + // some cases, we recommend that you don't add a database name. For more information, + // see Additional considerations (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-db-instance-prereqs.html#db2-prereqs-additional-considerations) + // in the Amazon RDS User Guide. // // Constraints: // @@ -41499,7 +41502,14 @@ func (s *DescribeExportTasksOutput) SetMarker(v string) *DescribeExportTasksOutp type DescribeGlobalClustersInput struct { _ struct{} `type:"structure"` - // This parameter isn't currently supported. + // A filter that specifies one or more global database clusters to describe. + // This parameter is case-sensitive. + // + // Currently, the only supported filter is region. + // + // If used, the request returns information about any global cluster with at + // least one member (primary or secondary) in the specified Amazon Web Services + // Regions. Filters []*Filter `locationNameList:"Filter" type:"list"` // The user-supplied DB cluster identifier. If this parameter is specified, diff --git a/service/secretsmanager/api.go b/service/secretsmanager/api.go index b57e57dfd0..4b72692d27 100644 --- a/service/secretsmanager/api.go +++ b/service/secretsmanager/api.go @@ -877,9 +877,6 @@ func (c *SecretsManager) GetRandomPasswordRequest(input *GetRandomPasswordInput) // letters, numbers, and the following characters in passwords: !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ // // Secrets Manager generates a CloudTrail log entry when you call this action. -// Do not include sensitive information in request parameters because it might -// be logged. For more information, see Logging Secrets Manager events with -// CloudTrail (https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieve-ct-entries.html). // // Required permissions: secretsmanager:GetRandomPassword. For more information, // see IAM policy actions for Secrets Manager (https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_iam-permissions.html#reference_iam-permissions_actions) @@ -3070,7 +3067,8 @@ type BatchGetSecretValueInput struct { // // If there are more results available, in the response, Secrets Manager includes // NextToken. To get the next results, call BatchGetSecretValue again with the - // value from NextToken. + // value from NextToken. To use this parameter, you must also use the Filters + // parameter. MaxResults *int64 `min:"1" type:"integer"` // A token that indicates where the output should continue from, if a previous @@ -4031,6 +4029,11 @@ type DescribeSecretOutput struct { // returns null. If rotation fails, Secrets Manager retries the entire rotation // process multiple times. If rotation is unsuccessful, this date may be in // the past. + // + // This date represents the latest date that rotation will occur, but it is + // not an approximate rotation date. In some cases, for example if you turn + // off automatic rotation and then turn it back on, the next rotation may occur + // much sooner than this date. NextRotationDate *time.Time `type:"timestamp"` // The ID of the service that created this secret. For more information, see diff --git a/service/timestreaminfluxdb/api.go b/service/timestreaminfluxdb/api.go new file mode 100644 index 0000000000..5f10969012 --- /dev/null +++ b/service/timestreaminfluxdb/api.go @@ -0,0 +1,4124 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package timestreaminfluxdb + +import ( + "fmt" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opCreateDbInstance = "CreateDbInstance" + +// CreateDbInstanceRequest generates a "aws/request.Request" representing the +// client's request for the CreateDbInstance 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 CreateDbInstance for more information on using the CreateDbInstance +// 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 CreateDbInstanceRequest method. +// req, resp := client.CreateDbInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/CreateDbInstance +func (c *TimestreamInfluxDB) CreateDbInstanceRequest(input *CreateDbInstanceInput) (req *request.Request, output *CreateDbInstanceOutput) { + op := &request.Operation{ + Name: opCreateDbInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateDbInstanceInput{} + } + + output = &CreateDbInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDbInstance API operation for Timestream InfluxDB. +// +// Creates a new Timestream for InfluxDB DB instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation CreateDbInstance for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request exceeds the service quota. +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ConflictException +// The request conflicts with an existing resource in Timestream for InfluxDB. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/CreateDbInstance +func (c *TimestreamInfluxDB) CreateDbInstance(input *CreateDbInstanceInput) (*CreateDbInstanceOutput, error) { + req, out := c.CreateDbInstanceRequest(input) + return out, req.Send() +} + +// CreateDbInstanceWithContext is the same as CreateDbInstance with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDbInstance 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 *TimestreamInfluxDB) CreateDbInstanceWithContext(ctx aws.Context, input *CreateDbInstanceInput, opts ...request.Option) (*CreateDbInstanceOutput, error) { + req, out := c.CreateDbInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateDbParameterGroup = "CreateDbParameterGroup" + +// CreateDbParameterGroupRequest generates a "aws/request.Request" representing the +// client's request for the CreateDbParameterGroup 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 CreateDbParameterGroup for more information on using the CreateDbParameterGroup +// 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 CreateDbParameterGroupRequest method. +// req, resp := client.CreateDbParameterGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/CreateDbParameterGroup +func (c *TimestreamInfluxDB) CreateDbParameterGroupRequest(input *CreateDbParameterGroupInput) (req *request.Request, output *CreateDbParameterGroupOutput) { + op := &request.Operation{ + Name: opCreateDbParameterGroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateDbParameterGroupInput{} + } + + output = &CreateDbParameterGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateDbParameterGroup API operation for Timestream InfluxDB. +// +// Creates a new Timestream for InfluxDB DB parameter group to associate with +// DB instances. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation CreateDbParameterGroup for usage and error information. +// +// Returned Error Types: +// +// - ServiceQuotaExceededException +// The request exceeds the service quota. +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ConflictException +// The request conflicts with an existing resource in Timestream for InfluxDB. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/CreateDbParameterGroup +func (c *TimestreamInfluxDB) CreateDbParameterGroup(input *CreateDbParameterGroupInput) (*CreateDbParameterGroupOutput, error) { + req, out := c.CreateDbParameterGroupRequest(input) + return out, req.Send() +} + +// CreateDbParameterGroupWithContext is the same as CreateDbParameterGroup with the addition of +// the ability to pass a context and additional request options. +// +// See CreateDbParameterGroup 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 *TimestreamInfluxDB) CreateDbParameterGroupWithContext(ctx aws.Context, input *CreateDbParameterGroupInput, opts ...request.Option) (*CreateDbParameterGroupOutput, error) { + req, out := c.CreateDbParameterGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteDbInstance = "DeleteDbInstance" + +// DeleteDbInstanceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDbInstance 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 DeleteDbInstance for more information on using the DeleteDbInstance +// 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 DeleteDbInstanceRequest method. +// req, resp := client.DeleteDbInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/DeleteDbInstance +func (c *TimestreamInfluxDB) DeleteDbInstanceRequest(input *DeleteDbInstanceInput) (req *request.Request, output *DeleteDbInstanceOutput) { + op := &request.Operation{ + Name: opDeleteDbInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDbInstanceInput{} + } + + output = &DeleteDbInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDbInstance API operation for Timestream InfluxDB. +// +// Deletes a Timestream for InfluxDB DB instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation DeleteDbInstance for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ConflictException +// The request conflicts with an existing resource in Timestream for InfluxDB. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/DeleteDbInstance +func (c *TimestreamInfluxDB) DeleteDbInstance(input *DeleteDbInstanceInput) (*DeleteDbInstanceOutput, error) { + req, out := c.DeleteDbInstanceRequest(input) + return out, req.Send() +} + +// DeleteDbInstanceWithContext is the same as DeleteDbInstance with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDbInstance 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 *TimestreamInfluxDB) DeleteDbInstanceWithContext(ctx aws.Context, input *DeleteDbInstanceInput, opts ...request.Option) (*DeleteDbInstanceOutput, error) { + req, out := c.DeleteDbInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDbInstance = "GetDbInstance" + +// GetDbInstanceRequest generates a "aws/request.Request" representing the +// client's request for the GetDbInstance 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 GetDbInstance for more information on using the GetDbInstance +// 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 GetDbInstanceRequest method. +// req, resp := client.GetDbInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/GetDbInstance +func (c *TimestreamInfluxDB) GetDbInstanceRequest(input *GetDbInstanceInput) (req *request.Request, output *GetDbInstanceOutput) { + op := &request.Operation{ + Name: opGetDbInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDbInstanceInput{} + } + + output = &GetDbInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDbInstance API operation for Timestream InfluxDB. +// +// Returns a Timestream for InfluxDB DB instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation GetDbInstance for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/GetDbInstance +func (c *TimestreamInfluxDB) GetDbInstance(input *GetDbInstanceInput) (*GetDbInstanceOutput, error) { + req, out := c.GetDbInstanceRequest(input) + return out, req.Send() +} + +// GetDbInstanceWithContext is the same as GetDbInstance with the addition of +// the ability to pass a context and additional request options. +// +// See GetDbInstance 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 *TimestreamInfluxDB) GetDbInstanceWithContext(ctx aws.Context, input *GetDbInstanceInput, opts ...request.Option) (*GetDbInstanceOutput, error) { + req, out := c.GetDbInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetDbParameterGroup = "GetDbParameterGroup" + +// GetDbParameterGroupRequest generates a "aws/request.Request" representing the +// client's request for the GetDbParameterGroup 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 GetDbParameterGroup for more information on using the GetDbParameterGroup +// 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 GetDbParameterGroupRequest method. +// req, resp := client.GetDbParameterGroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/GetDbParameterGroup +func (c *TimestreamInfluxDB) GetDbParameterGroupRequest(input *GetDbParameterGroupInput) (req *request.Request, output *GetDbParameterGroupOutput) { + op := &request.Operation{ + Name: opGetDbParameterGroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetDbParameterGroupInput{} + } + + output = &GetDbParameterGroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDbParameterGroup API operation for Timestream InfluxDB. +// +// Returns a Timestream for InfluxDB DB parameter group. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation GetDbParameterGroup for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/GetDbParameterGroup +func (c *TimestreamInfluxDB) GetDbParameterGroup(input *GetDbParameterGroupInput) (*GetDbParameterGroupOutput, error) { + req, out := c.GetDbParameterGroupRequest(input) + return out, req.Send() +} + +// GetDbParameterGroupWithContext is the same as GetDbParameterGroup with the addition of +// the ability to pass a context and additional request options. +// +// See GetDbParameterGroup 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 *TimestreamInfluxDB) GetDbParameterGroupWithContext(ctx aws.Context, input *GetDbParameterGroupInput, opts ...request.Option) (*GetDbParameterGroupOutput, error) { + req, out := c.GetDbParameterGroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDbInstances = "ListDbInstances" + +// ListDbInstancesRequest generates a "aws/request.Request" representing the +// client's request for the ListDbInstances 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 ListDbInstances for more information on using the ListDbInstances +// 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 ListDbInstancesRequest method. +// req, resp := client.ListDbInstancesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListDbInstances +func (c *TimestreamInfluxDB) ListDbInstancesRequest(input *ListDbInstancesInput) (req *request.Request, output *ListDbInstancesOutput) { + op := &request.Operation{ + Name: opListDbInstances, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDbInstancesInput{} + } + + output = &ListDbInstancesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDbInstances API operation for Timestream InfluxDB. +// +// Returns a list of Timestream for InfluxDB DB instances. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation ListDbInstances for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListDbInstances +func (c *TimestreamInfluxDB) ListDbInstances(input *ListDbInstancesInput) (*ListDbInstancesOutput, error) { + req, out := c.ListDbInstancesRequest(input) + return out, req.Send() +} + +// ListDbInstancesWithContext is the same as ListDbInstances with the addition of +// the ability to pass a context and additional request options. +// +// See ListDbInstances 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 *TimestreamInfluxDB) ListDbInstancesWithContext(ctx aws.Context, input *ListDbInstancesInput, opts ...request.Option) (*ListDbInstancesOutput, error) { + req, out := c.ListDbInstancesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDbInstancesPages iterates over the pages of a ListDbInstances operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDbInstances 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 ListDbInstances operation. +// pageNum := 0 +// err := client.ListDbInstancesPages(params, +// func(page *timestreaminfluxdb.ListDbInstancesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TimestreamInfluxDB) ListDbInstancesPages(input *ListDbInstancesInput, fn func(*ListDbInstancesOutput, bool) bool) error { + return c.ListDbInstancesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDbInstancesPagesWithContext same as ListDbInstancesPages 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 *TimestreamInfluxDB) ListDbInstancesPagesWithContext(ctx aws.Context, input *ListDbInstancesInput, fn func(*ListDbInstancesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDbInstancesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDbInstancesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDbInstancesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListDbParameterGroups = "ListDbParameterGroups" + +// ListDbParameterGroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListDbParameterGroups 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 ListDbParameterGroups for more information on using the ListDbParameterGroups +// 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 ListDbParameterGroupsRequest method. +// req, resp := client.ListDbParameterGroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListDbParameterGroups +func (c *TimestreamInfluxDB) ListDbParameterGroupsRequest(input *ListDbParameterGroupsInput) (req *request.Request, output *ListDbParameterGroupsOutput) { + op := &request.Operation{ + Name: opListDbParameterGroups, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListDbParameterGroupsInput{} + } + + output = &ListDbParameterGroupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDbParameterGroups API operation for Timestream InfluxDB. +// +// Returns a list of Timestream for InfluxDB DB parameter groups. +// +// 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 Timestream InfluxDB's +// API operation ListDbParameterGroups for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListDbParameterGroups +func (c *TimestreamInfluxDB) ListDbParameterGroups(input *ListDbParameterGroupsInput) (*ListDbParameterGroupsOutput, error) { + req, out := c.ListDbParameterGroupsRequest(input) + return out, req.Send() +} + +// ListDbParameterGroupsWithContext is the same as ListDbParameterGroups with the addition of +// the ability to pass a context and additional request options. +// +// See ListDbParameterGroups 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 *TimestreamInfluxDB) ListDbParameterGroupsWithContext(ctx aws.Context, input *ListDbParameterGroupsInput, opts ...request.Option) (*ListDbParameterGroupsOutput, error) { + req, out := c.ListDbParameterGroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListDbParameterGroupsPages iterates over the pages of a ListDbParameterGroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListDbParameterGroups 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 ListDbParameterGroups operation. +// pageNum := 0 +// err := client.ListDbParameterGroupsPages(params, +// func(page *timestreaminfluxdb.ListDbParameterGroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *TimestreamInfluxDB) ListDbParameterGroupsPages(input *ListDbParameterGroupsInput, fn func(*ListDbParameterGroupsOutput, bool) bool) error { + return c.ListDbParameterGroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListDbParameterGroupsPagesWithContext same as ListDbParameterGroupsPages 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 *TimestreamInfluxDB) ListDbParameterGroupsPagesWithContext(ctx aws.Context, input *ListDbParameterGroupsInput, fn func(*ListDbParameterGroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListDbParameterGroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListDbParameterGroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListDbParameterGroupsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListTagsForResource +func (c *TimestreamInfluxDB) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Timestream InfluxDB. +// +// A list of tags applied to the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/ListTagsForResource +func (c *TimestreamInfluxDB) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TimestreamInfluxDB) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/TagResource +func (c *TimestreamInfluxDB) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for Timestream InfluxDB. +// +// Tags are composed of a Key/Value pairs. You can use tags to categorize and +// track your Timestream for InfluxDB resources. +// +// 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 Timestream InfluxDB's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/TagResource +func (c *TimestreamInfluxDB) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TimestreamInfluxDB) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/UntagResource +func (c *TimestreamInfluxDB) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Timestream InfluxDB. +// +// Removes the tag from the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/UntagResource +func (c *TimestreamInfluxDB) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *TimestreamInfluxDB) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateDbInstance = "UpdateDbInstance" + +// UpdateDbInstanceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateDbInstance 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 UpdateDbInstance for more information on using the UpdateDbInstance +// 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 UpdateDbInstanceRequest method. +// req, resp := client.UpdateDbInstanceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/UpdateDbInstance +func (c *TimestreamInfluxDB) UpdateDbInstanceRequest(input *UpdateDbInstanceInput) (req *request.Request, output *UpdateDbInstanceOutput) { + op := &request.Operation{ + Name: opUpdateDbInstance, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateDbInstanceInput{} + } + + output = &UpdateDbInstanceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateDbInstance API operation for Timestream InfluxDB. +// +// Updates a Timestream for InfluxDB DB instance. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Timestream InfluxDB's +// API operation UpdateDbInstance for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// - ConflictException +// The request conflicts with an existing resource in Timestream for InfluxDB. +// +// - ResourceNotFoundException +// The requested resource was not found or does not exist. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27/UpdateDbInstance +func (c *TimestreamInfluxDB) UpdateDbInstance(input *UpdateDbInstanceInput) (*UpdateDbInstanceOutput, error) { + req, out := c.UpdateDbInstanceRequest(input) + return out, req.Send() +} + +// UpdateDbInstanceWithContext is the same as UpdateDbInstance with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateDbInstance 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 *TimestreamInfluxDB) UpdateDbInstanceWithContext(ctx aws.Context, input *UpdateDbInstanceInput, opts ...request.Option) (*UpdateDbInstanceOutput, error) { + req, out := c.UpdateDbInstanceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" 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 request conflicts with an existing resource in Timestream for InfluxDB. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The identifier for the Timestream for InfluxDB resource associated with the + // request. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of Timestream for InfluxDB resource associated with the request. + // + // ResourceType is a required field + ResourceType *string `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 ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateDbInstanceInput struct { + _ struct{} `type:"structure"` + + // The amount of storage to allocate for your DB storage type in GiB (gibibytes). + // + // AllocatedStorage is a required field + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer" required:"true"` + + // The name of the initial InfluxDB bucket. All InfluxDB data is stored in a + // bucket. A bucket combines the concept of a database and a retention period + // (the duration of time that each data point persists). A bucket belongs to + // an organization. + Bucket *string `locationName:"bucket" min:"2" type:"string"` + + // The Timestream for InfluxDB DB instance type to run InfluxDB on. + // + // DbInstanceType is a required field + DbInstanceType *string `locationName:"dbInstanceType" type:"string" required:"true" enum:"DbInstanceType"` + + // The id of the DB parameter group to assign to your DB instance. DB parameter + // groups specify how the database is configured. For example, DB parameter + // groups can specify the limit for query concurrency. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The Timestream for InfluxDB DB storage type to read and write InfluxDB data. + // + // You can choose between 3 different types of provisioned Influx IOPS included + // storage according to your workloads requirements: + // + // * Influx IO Included 3000 IOPS + // + // * Influx IO Included 12000 IOPS + // + // * Influx IO Included 16000 IOPS + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Specifies whether the DB instance will be deployed as a standalone instance + // or with a Multi-AZ standby for high availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // Configuration for sending InfluxDB engine logs to a specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" type:"structure"` + + // The name that uniquely identifies the DB instance when interacting with the + // Amazon Timestream for InfluxDB API and CLI commands. This name will also + // be a prefix included in the endpoint. DB instance names must be unique per + // customer and per region. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The name of the initial organization for the initial admin user in InfluxDB. + // An InfluxDB organization is a workspace for a group of users. + Organization *string `locationName:"organization" min:"1" type:"string"` + + // The password of the initial admin user created in InfluxDB. This password + // will allow you to access the InfluxDB UI to perform various administrative + // tasks and also use the InfluxDB CLI to create an operator token. These attributes + // will be stored in a Secret created in AWS SecretManager in your account. + // + // Password is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDbInstanceInput's + // String and GoString methods. + // + // Password is a required field + Password *string `locationName:"password" min:"8" type:"string" required:"true" sensitive:"true"` + + // Configures the DB instance with a public IP to facilitate access. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // A list of key-value pairs to associate with the DB instance. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` + + // The username of the initial admin user created in InfluxDB. Must start with + // a letter and can't end with a hyphen or contain two consecutive hyphens. + // For example, my-user1. This username will allow you to access the InfluxDB + // UI to perform various administrative tasks and also use the InfluxDB CLI + // to create an operator token. These attributes will be stored in a Secret + // created in Amazon Secrets Manager in your account. + // + // Username is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateDbInstanceInput's + // String and GoString methods. + Username *string `locationName:"username" min:"1" type:"string" sensitive:"true"` + + // A list of VPC security group IDs to associate with the DB instance. + // + // VpcSecurityGroupIds is a required field + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" min:"1" type:"list" required:"true"` + + // A list of VPC subnet IDs to associate with the DB instance. Provide at least + // two VPC subnet IDs in different availability zones when deploying with a + // Multi-AZ standby. + // + // VpcSubnetIds is a required field + VpcSubnetIds []*string `locationName:"vpcSubnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDbInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDbInstanceInput"} + if s.AllocatedStorage == nil { + invalidParams.Add(request.NewErrParamRequired("AllocatedStorage")) + } + if s.AllocatedStorage != nil && *s.AllocatedStorage < 20 { + invalidParams.Add(request.NewErrParamMinValue("AllocatedStorage", 20)) + } + if s.Bucket != nil && len(*s.Bucket) < 2 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 2)) + } + if s.DbInstanceType == nil { + invalidParams.Add(request.NewErrParamRequired("DbInstanceType")) + } + if s.DbParameterGroupIdentifier != nil && len(*s.DbParameterGroupIdentifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DbParameterGroupIdentifier", 3)) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Organization != nil && len(*s.Organization) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Organization", 1)) + } + if s.Password == nil { + invalidParams.Add(request.NewErrParamRequired("Password")) + } + if s.Password != nil && len(*s.Password) < 8 { + invalidParams.Add(request.NewErrParamMinLen("Password", 8)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + if s.Username != nil && len(*s.Username) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Username", 1)) + } + if s.VpcSecurityGroupIds == nil { + invalidParams.Add(request.NewErrParamRequired("VpcSecurityGroupIds")) + } + if s.VpcSecurityGroupIds != nil && len(s.VpcSecurityGroupIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VpcSecurityGroupIds", 1)) + } + if s.VpcSubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("VpcSubnetIds")) + } + if s.VpcSubnetIds != nil && len(s.VpcSubnetIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VpcSubnetIds", 1)) + } + if s.LogDeliveryConfiguration != nil { + if err := s.LogDeliveryConfiguration.Validate(); err != nil { + invalidParams.AddNested("LogDeliveryConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *CreateDbInstanceInput) SetAllocatedStorage(v int64) *CreateDbInstanceInput { + s.AllocatedStorage = &v + return s +} + +// SetBucket sets the Bucket field's value. +func (s *CreateDbInstanceInput) SetBucket(v string) *CreateDbInstanceInput { + s.Bucket = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *CreateDbInstanceInput) SetDbInstanceType(v string) *CreateDbInstanceInput { + s.DbInstanceType = &v + return s +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *CreateDbInstanceInput) SetDbParameterGroupIdentifier(v string) *CreateDbInstanceInput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *CreateDbInstanceInput) SetDbStorageType(v string) *CreateDbInstanceInput { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *CreateDbInstanceInput) SetDeploymentType(v string) *CreateDbInstanceInput { + s.DeploymentType = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *CreateDbInstanceInput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *CreateDbInstanceInput { + s.LogDeliveryConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDbInstanceInput) SetName(v string) *CreateDbInstanceInput { + s.Name = &v + return s +} + +// SetOrganization sets the Organization field's value. +func (s *CreateDbInstanceInput) SetOrganization(v string) *CreateDbInstanceInput { + s.Organization = &v + return s +} + +// SetPassword sets the Password field's value. +func (s *CreateDbInstanceInput) SetPassword(v string) *CreateDbInstanceInput { + s.Password = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *CreateDbInstanceInput) SetPubliclyAccessible(v bool) *CreateDbInstanceInput { + s.PubliclyAccessible = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDbInstanceInput) SetTags(v map[string]*string) *CreateDbInstanceInput { + s.Tags = v + return s +} + +// SetUsername sets the Username field's value. +func (s *CreateDbInstanceInput) SetUsername(v string) *CreateDbInstanceInput { + s.Username = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *CreateDbInstanceInput) SetVpcSecurityGroupIds(v []*string) *CreateDbInstanceInput { + s.VpcSecurityGroupIds = v + return s +} + +// SetVpcSubnetIds sets the VpcSubnetIds field's value. +func (s *CreateDbInstanceInput) SetVpcSubnetIds(v []*string) *CreateDbInstanceInput { + s.VpcSubnetIds = v + return s +} + +type CreateDbInstanceOutput struct { + _ struct{} `type:"structure"` + + // The amount of storage allocated for your DB storage type (in gibibytes). + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer"` + + // The Amazon Resource Name (ARN) of the DB instance. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The Availability Zone in which the DB instance resides. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The Timestream for InfluxDB instance type that InfluxDB runs on. + DbInstanceType *string `locationName:"dbInstanceType" type:"string" enum:"DbInstanceType"` + + // The id of the DB parameter group assigned to your DB instance. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The Timestream for InfluxDB DB storage type that InfluxDB stores data on. + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or + // with a MultiAZ Standby for High availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086. + Endpoint *string `locationName:"endpoint" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing + // the initial InfluxDB authorization parameters. The secret value is a JSON + // formatted key-value pair holding InfluxDB authorization values: organization, + // bucket, username, and password. + InfluxAuthParametersSecretArn *string `locationName:"influxAuthParametersSecretArn" type:"string"` + + // Configuration for sending InfluxDB engine logs to send to specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" type:"structure"` + + // The customer-supplied name that uniquely identifies the DB instance when + // interacting with the Amazon Timestream for InfluxDB API and CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // Indicates if the DB instance has a public IP to facilitate access. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // The Availability Zone in which the standby instance is located when deploying + // with a MultiAZ standby instance. + SecondaryAvailabilityZone *string `locationName:"secondaryAvailabilityZone" type:"string"` + + // The status of the DB instance. + Status *string `locationName:"status" type:"string" enum:"Status"` + + // A list of VPC security group IDs associated with the DB instance. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" min:"1" type:"list"` + + // A list of VPC subnet IDs associated with the DB instance. + // + // VpcSubnetIds is a required field + VpcSubnetIds []*string `locationName:"vpcSubnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbInstanceOutput) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *CreateDbInstanceOutput) SetAllocatedStorage(v int64) *CreateDbInstanceOutput { + s.AllocatedStorage = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *CreateDbInstanceOutput) SetArn(v string) *CreateDbInstanceOutput { + s.Arn = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *CreateDbInstanceOutput) SetAvailabilityZone(v string) *CreateDbInstanceOutput { + s.AvailabilityZone = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *CreateDbInstanceOutput) SetDbInstanceType(v string) *CreateDbInstanceOutput { + s.DbInstanceType = &v + return s +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *CreateDbInstanceOutput) SetDbParameterGroupIdentifier(v string) *CreateDbInstanceOutput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *CreateDbInstanceOutput) SetDbStorageType(v string) *CreateDbInstanceOutput { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *CreateDbInstanceOutput) SetDeploymentType(v string) *CreateDbInstanceOutput { + s.DeploymentType = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *CreateDbInstanceOutput) SetEndpoint(v string) *CreateDbInstanceOutput { + s.Endpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateDbInstanceOutput) SetId(v string) *CreateDbInstanceOutput { + s.Id = &v + return s +} + +// SetInfluxAuthParametersSecretArn sets the InfluxAuthParametersSecretArn field's value. +func (s *CreateDbInstanceOutput) SetInfluxAuthParametersSecretArn(v string) *CreateDbInstanceOutput { + s.InfluxAuthParametersSecretArn = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *CreateDbInstanceOutput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *CreateDbInstanceOutput { + s.LogDeliveryConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDbInstanceOutput) SetName(v string) *CreateDbInstanceOutput { + s.Name = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *CreateDbInstanceOutput) SetPubliclyAccessible(v bool) *CreateDbInstanceOutput { + s.PubliclyAccessible = &v + return s +} + +// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. +func (s *CreateDbInstanceOutput) SetSecondaryAvailabilityZone(v string) *CreateDbInstanceOutput { + s.SecondaryAvailabilityZone = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateDbInstanceOutput) SetStatus(v string) *CreateDbInstanceOutput { + s.Status = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *CreateDbInstanceOutput) SetVpcSecurityGroupIds(v []*string) *CreateDbInstanceOutput { + s.VpcSecurityGroupIds = v + return s +} + +// SetVpcSubnetIds sets the VpcSubnetIds field's value. +func (s *CreateDbInstanceOutput) SetVpcSubnetIds(v []*string) *CreateDbInstanceOutput { + s.VpcSubnetIds = v + return s +} + +type CreateDbParameterGroupInput struct { + _ struct{} `type:"structure"` + + // A description of the DB parameter group. + Description *string `locationName:"description" type:"string"` + + // The name of the DB parameter group. The name must be unique per customer + // and per region. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // A list of the parameters that comprise the DB parameter group. + Parameters *Parameters `locationName:"parameters" type:"structure"` + + // A list of key-value pairs to associate with the DB parameter group. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbParameterGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbParameterGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateDbParameterGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateDbParameterGroupInput"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Name != nil && len(*s.Name) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Name", 3)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateDbParameterGroupInput) SetDescription(v string) *CreateDbParameterGroupInput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDbParameterGroupInput) SetName(v string) *CreateDbParameterGroupInput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateDbParameterGroupInput) SetParameters(v *Parameters) *CreateDbParameterGroupInput { + s.Parameters = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateDbParameterGroupInput) SetTags(v map[string]*string) *CreateDbParameterGroupInput { + s.Tags = v + return s +} + +type CreateDbParameterGroupOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARM) of the DB parameter group. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The description of the DB parameter group. + Description *string `locationName:"description" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The customer-supplied name that uniquely identifies the DB parameter group + // when interacting with the Amazon Timestream for InfluxDB API and CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // A list of the parameters that comprise the DB parameter group. + Parameters *Parameters `locationName:"parameters" 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 CreateDbParameterGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateDbParameterGroupOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *CreateDbParameterGroupOutput) SetArn(v string) *CreateDbParameterGroupOutput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *CreateDbParameterGroupOutput) SetDescription(v string) *CreateDbParameterGroupOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *CreateDbParameterGroupOutput) SetId(v string) *CreateDbParameterGroupOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *CreateDbParameterGroupOutput) SetName(v string) *CreateDbParameterGroupOutput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *CreateDbParameterGroupOutput) SetParameters(v *Parameters) *CreateDbParameterGroupOutput { + s.Parameters = v + return s +} + +// Contains a summary of a DB instance. +type DbInstanceSummary struct { + _ struct{} `type:"structure"` + + // The amount of storage to allocate for your DbStorageType in GiB (gibibytes). + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer"` + + // The Amazon Resource Name (ARN) of the DB instance. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The Timestream for InfluxDB instance type to run InfluxDB on. + DbInstanceType *string `locationName:"dbInstanceType" type:"string" enum:"DbInstanceType"` + + // The storage type for your DB instance. + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Single-Instance or with a MultiAZ Standby for High availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086. + Endpoint *string `locationName:"endpoint" type:"string"` + + // The service-generated unique identifier of the DB instance. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // This customer-supplied name uniquely identifies the DB instance when interacting + // with the Amazon Timestream for InfluxDB API and AWS CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The status of the DB instance. + Status *string `locationName:"status" type:"string" enum:"Status"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DbInstanceSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DbInstanceSummary) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *DbInstanceSummary) SetAllocatedStorage(v int64) *DbInstanceSummary { + s.AllocatedStorage = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *DbInstanceSummary) SetArn(v string) *DbInstanceSummary { + s.Arn = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *DbInstanceSummary) SetDbInstanceType(v string) *DbInstanceSummary { + s.DbInstanceType = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *DbInstanceSummary) SetDbStorageType(v string) *DbInstanceSummary { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *DbInstanceSummary) SetDeploymentType(v string) *DbInstanceSummary { + s.DeploymentType = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *DbInstanceSummary) SetEndpoint(v string) *DbInstanceSummary { + s.Endpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *DbInstanceSummary) SetId(v string) *DbInstanceSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *DbInstanceSummary) SetName(v string) *DbInstanceSummary { + s.Name = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DbInstanceSummary) SetStatus(v string) *DbInstanceSummary { + s.Status = &v + return s +} + +// Contains a summary of a DB parameter group. +type DbParameterGroupSummary struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the DB parameter group. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // A description of the DB parameter group. + Description *string `locationName:"description" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // This customer-supplied name uniquely identifies the parameter group. + // + // Name is a required field + Name *string `locationName:"name" 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 DbParameterGroupSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DbParameterGroupSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *DbParameterGroupSummary) SetArn(v string) *DbParameterGroupSummary { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DbParameterGroupSummary) SetDescription(v string) *DbParameterGroupSummary { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *DbParameterGroupSummary) SetId(v string) *DbParameterGroupSummary { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *DbParameterGroupSummary) SetName(v string) *DbParameterGroupSummary { + s.Name = &v + return s +} + +type DeleteDbInstanceInput struct { + _ struct{} `type:"structure"` + + // The id of the DB instance. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" 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 DeleteDbInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDbInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDbInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDbInstanceInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *DeleteDbInstanceInput) SetIdentifier(v string) *DeleteDbInstanceInput { + s.Identifier = &v + return s +} + +type DeleteDbInstanceOutput struct { + _ struct{} `type:"structure"` + + // The amount of storage allocated for your DB storage type (in gibibytes). + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer"` + + // The Amazon Resource Name (ARN) of the DB instance. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The Availability Zone in which the DB instance resides. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The Timestream for InfluxDB instance type that InfluxDB runs on. + DbInstanceType *string `locationName:"dbInstanceType" type:"string" enum:"DbInstanceType"` + + // The id of the DB parameter group assigned to your DB instance. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The Timestream for InfluxDB DB storage type that InfluxDB stores data on. + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or + // with a MultiAZ Standby for High availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086. + Endpoint *string `locationName:"endpoint" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing + // the initial InfluxDB authorization parameters. The secret value is a JSON + // formatted key-value pair holding InfluxDB authorization values: organization, + // bucket, username, and password. + InfluxAuthParametersSecretArn *string `locationName:"influxAuthParametersSecretArn" type:"string"` + + // Configuration for sending InfluxDB engine logs to send to specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" type:"structure"` + + // The customer-supplied name that uniquely identifies the DB instance when + // interacting with the Amazon Timestream for InfluxDB API and CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // Indicates if the DB instance has a public IP to facilitate access. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // The Availability Zone in which the standby instance is located when deploying + // with a MultiAZ standby instance. + SecondaryAvailabilityZone *string `locationName:"secondaryAvailabilityZone" type:"string"` + + // The status of the DB instance. + Status *string `locationName:"status" type:"string" enum:"Status"` + + // A list of VPC security group IDs associated with the DB instance. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" min:"1" type:"list"` + + // A list of VPC subnet IDs associated with the DB instance. + // + // VpcSubnetIds is a required field + VpcSubnetIds []*string `locationName:"vpcSubnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDbInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDbInstanceOutput) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *DeleteDbInstanceOutput) SetAllocatedStorage(v int64) *DeleteDbInstanceOutput { + s.AllocatedStorage = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *DeleteDbInstanceOutput) SetArn(v string) *DeleteDbInstanceOutput { + s.Arn = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *DeleteDbInstanceOutput) SetAvailabilityZone(v string) *DeleteDbInstanceOutput { + s.AvailabilityZone = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *DeleteDbInstanceOutput) SetDbInstanceType(v string) *DeleteDbInstanceOutput { + s.DbInstanceType = &v + return s +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *DeleteDbInstanceOutput) SetDbParameterGroupIdentifier(v string) *DeleteDbInstanceOutput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *DeleteDbInstanceOutput) SetDbStorageType(v string) *DeleteDbInstanceOutput { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *DeleteDbInstanceOutput) SetDeploymentType(v string) *DeleteDbInstanceOutput { + s.DeploymentType = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *DeleteDbInstanceOutput) SetEndpoint(v string) *DeleteDbInstanceOutput { + s.Endpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *DeleteDbInstanceOutput) SetId(v string) *DeleteDbInstanceOutput { + s.Id = &v + return s +} + +// SetInfluxAuthParametersSecretArn sets the InfluxAuthParametersSecretArn field's value. +func (s *DeleteDbInstanceOutput) SetInfluxAuthParametersSecretArn(v string) *DeleteDbInstanceOutput { + s.InfluxAuthParametersSecretArn = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *DeleteDbInstanceOutput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *DeleteDbInstanceOutput { + s.LogDeliveryConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *DeleteDbInstanceOutput) SetName(v string) *DeleteDbInstanceOutput { + s.Name = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *DeleteDbInstanceOutput) SetPubliclyAccessible(v bool) *DeleteDbInstanceOutput { + s.PubliclyAccessible = &v + return s +} + +// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. +func (s *DeleteDbInstanceOutput) SetSecondaryAvailabilityZone(v string) *DeleteDbInstanceOutput { + s.SecondaryAvailabilityZone = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteDbInstanceOutput) SetStatus(v string) *DeleteDbInstanceOutput { + s.Status = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *DeleteDbInstanceOutput) SetVpcSecurityGroupIds(v []*string) *DeleteDbInstanceOutput { + s.VpcSecurityGroupIds = v + return s +} + +// SetVpcSubnetIds sets the VpcSubnetIds field's value. +func (s *DeleteDbInstanceOutput) SetVpcSubnetIds(v []*string) *DeleteDbInstanceOutput { + s.VpcSubnetIds = v + return s +} + +type GetDbInstanceInput struct { + _ struct{} `type:"structure"` + + // The id of the DB instance. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" 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 GetDbInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDbInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDbInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDbInstanceInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetDbInstanceInput) SetIdentifier(v string) *GetDbInstanceInput { + s.Identifier = &v + return s +} + +type GetDbInstanceOutput struct { + _ struct{} `type:"structure"` + + // The amount of storage allocated for your DB storage type (in gibibytes). + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer"` + + // The Amazon Resource Name (ARN) of the DB instance. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The Availability Zone in which the DB instance resides. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The Timestream for InfluxDB instance type that InfluxDB runs on. + DbInstanceType *string `locationName:"dbInstanceType" type:"string" enum:"DbInstanceType"` + + // The id of the DB parameter group assigned to your DB instance. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The Timestream for InfluxDB DB storage type that InfluxDB stores data on. + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or + // with a MultiAZ Standby for High availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086. + Endpoint *string `locationName:"endpoint" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing + // the initial InfluxDB authorization parameters. The secret value is a JSON + // formatted key-value pair holding InfluxDB authorization values: organization, + // bucket, username, and password. + InfluxAuthParametersSecretArn *string `locationName:"influxAuthParametersSecretArn" type:"string"` + + // Configuration for sending InfluxDB engine logs to send to specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" type:"structure"` + + // The customer-supplied name that uniquely identifies the DB instance when + // interacting with the Amazon Timestream for InfluxDB API and CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // Indicates if the DB instance has a public IP to facilitate access. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // The Availability Zone in which the standby instance is located when deploying + // with a MultiAZ standby instance. + SecondaryAvailabilityZone *string `locationName:"secondaryAvailabilityZone" type:"string"` + + // The status of the DB instance. + Status *string `locationName:"status" type:"string" enum:"Status"` + + // A list of VPC security group IDs associated with the DB instance. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" min:"1" type:"list"` + + // A list of VPC subnet IDs associated with the DB instance. + // + // VpcSubnetIds is a required field + VpcSubnetIds []*string `locationName:"vpcSubnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDbInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDbInstanceOutput) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *GetDbInstanceOutput) SetAllocatedStorage(v int64) *GetDbInstanceOutput { + s.AllocatedStorage = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *GetDbInstanceOutput) SetArn(v string) *GetDbInstanceOutput { + s.Arn = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *GetDbInstanceOutput) SetAvailabilityZone(v string) *GetDbInstanceOutput { + s.AvailabilityZone = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *GetDbInstanceOutput) SetDbInstanceType(v string) *GetDbInstanceOutput { + s.DbInstanceType = &v + return s +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *GetDbInstanceOutput) SetDbParameterGroupIdentifier(v string) *GetDbInstanceOutput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *GetDbInstanceOutput) SetDbStorageType(v string) *GetDbInstanceOutput { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *GetDbInstanceOutput) SetDeploymentType(v string) *GetDbInstanceOutput { + s.DeploymentType = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *GetDbInstanceOutput) SetEndpoint(v string) *GetDbInstanceOutput { + s.Endpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetDbInstanceOutput) SetId(v string) *GetDbInstanceOutput { + s.Id = &v + return s +} + +// SetInfluxAuthParametersSecretArn sets the InfluxAuthParametersSecretArn field's value. +func (s *GetDbInstanceOutput) SetInfluxAuthParametersSecretArn(v string) *GetDbInstanceOutput { + s.InfluxAuthParametersSecretArn = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *GetDbInstanceOutput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *GetDbInstanceOutput { + s.LogDeliveryConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *GetDbInstanceOutput) SetName(v string) *GetDbInstanceOutput { + s.Name = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *GetDbInstanceOutput) SetPubliclyAccessible(v bool) *GetDbInstanceOutput { + s.PubliclyAccessible = &v + return s +} + +// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. +func (s *GetDbInstanceOutput) SetSecondaryAvailabilityZone(v string) *GetDbInstanceOutput { + s.SecondaryAvailabilityZone = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetDbInstanceOutput) SetStatus(v string) *GetDbInstanceOutput { + s.Status = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *GetDbInstanceOutput) SetVpcSecurityGroupIds(v []*string) *GetDbInstanceOutput { + s.VpcSecurityGroupIds = v + return s +} + +// SetVpcSubnetIds sets the VpcSubnetIds field's value. +func (s *GetDbInstanceOutput) SetVpcSubnetIds(v []*string) *GetDbInstanceOutput { + s.VpcSubnetIds = v + return s +} + +type GetDbParameterGroupInput struct { + _ struct{} `type:"structure"` + + // The id of the DB parameter group. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" 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 GetDbParameterGroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDbParameterGroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDbParameterGroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDbParameterGroupInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetDbParameterGroupInput) SetIdentifier(v string) *GetDbParameterGroupInput { + s.Identifier = &v + return s +} + +type GetDbParameterGroupOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the DB parameter group. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // A description of the DB parameter group. + Description *string `locationName:"description" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The customer-supplied name that uniquely identifies the DB parameter group + // when interacting with the Amazon Timestream for InfluxDB API and CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // The parameters that comprise the DB parameter group. + Parameters *Parameters `locationName:"parameters" 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 GetDbParameterGroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDbParameterGroupOutput) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *GetDbParameterGroupOutput) SetArn(v string) *GetDbParameterGroupOutput { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetDbParameterGroupOutput) SetDescription(v string) *GetDbParameterGroupOutput { + s.Description = &v + return s +} + +// SetId sets the Id field's value. +func (s *GetDbParameterGroupOutput) SetId(v string) *GetDbParameterGroupOutput { + s.Id = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetDbParameterGroupOutput) SetName(v string) *GetDbParameterGroupOutput { + s.Name = &v + return s +} + +// SetParameters sets the Parameters field's value. +func (s *GetDbParameterGroupOutput) SetParameters(v *Parameters) *GetDbParameterGroupOutput { + s.Parameters = v + return s +} + +// All the customer-modifiable InfluxDB v2 parameters in Timestream for InfluxDB. +type InfluxDBv2Parameters struct { + _ struct{} `type:"structure"` + + // Include option to show detailed logs for Flux queries. + // + // Default: false + FluxLogEnabled *bool `locationName:"fluxLogEnabled" type:"boolean"` + + // Log output level. InfluxDB outputs log entries with severity levels greater + // than or equal to the level specified. + // + // Default: info + LogLevel *string `locationName:"logLevel" type:"string" enum:"LogLevel"` + + // Disable the HTTP /metrics endpoint which exposes internal InfluxDB metrics + // (https://docs.influxdata.com/influxdb/v2/reference/internals/metrics/). + // + // Default: false + MetricsDisabled *bool `locationName:"metricsDisabled" type:"boolean"` + + // Disable the task scheduler. If problematic tasks prevent InfluxDB from starting, + // use this option to start InfluxDB without scheduling or executing tasks. + // + // Default: false + NoTasks *bool `locationName:"noTasks" type:"boolean"` + + // Number of queries allowed to execute concurrently. Setting to 0 allows an + // unlimited number of concurrent queries. + // + // Default: 0 + QueryConcurrency *int64 `locationName:"queryConcurrency" type:"integer"` + + // Maximum number of queries allowed in execution queue. When queue limit is + // reached, new queries are rejected. Setting to 0 allows an unlimited number + // of queries in the queue. + // + // Default: 0 + QueryQueueSize *int64 `locationName:"queryQueueSize" type:"integer"` + + // Enable tracing in InfluxDB and specifies the tracing type. Tracing is disabled + // by default. + TracingType *string `locationName:"tracingType" type:"string" enum:"TracingType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InfluxDBv2Parameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InfluxDBv2Parameters) GoString() string { + return s.String() +} + +// SetFluxLogEnabled sets the FluxLogEnabled field's value. +func (s *InfluxDBv2Parameters) SetFluxLogEnabled(v bool) *InfluxDBv2Parameters { + s.FluxLogEnabled = &v + return s +} + +// SetLogLevel sets the LogLevel field's value. +func (s *InfluxDBv2Parameters) SetLogLevel(v string) *InfluxDBv2Parameters { + s.LogLevel = &v + return s +} + +// SetMetricsDisabled sets the MetricsDisabled field's value. +func (s *InfluxDBv2Parameters) SetMetricsDisabled(v bool) *InfluxDBv2Parameters { + s.MetricsDisabled = &v + return s +} + +// SetNoTasks sets the NoTasks field's value. +func (s *InfluxDBv2Parameters) SetNoTasks(v bool) *InfluxDBv2Parameters { + s.NoTasks = &v + return s +} + +// SetQueryConcurrency sets the QueryConcurrency field's value. +func (s *InfluxDBv2Parameters) SetQueryConcurrency(v int64) *InfluxDBv2Parameters { + s.QueryConcurrency = &v + return s +} + +// SetQueryQueueSize sets the QueryQueueSize field's value. +func (s *InfluxDBv2Parameters) SetQueryQueueSize(v int64) *InfluxDBv2Parameters { + s.QueryQueueSize = &v + return s +} + +// SetTracingType sets the TracingType field's value. +func (s *InfluxDBv2Parameters) SetTracingType(v string) *InfluxDBv2Parameters { + s.TracingType = &v + return s +} + +// The request processing has failed because of an unknown error, exception +// or failure. +type InternalServerException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +func (s *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListDbInstancesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return in the output. If the total number + // of items available is more than the value specified, a NextToken is provided + // in the output. To resume pagination, provide the NextToken value as argument + // of a subsequent API invocation. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token. To resume pagination, provide the NextToken value as + // argument of a subsequent API invocation. + 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 ListDbInstancesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDbInstancesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDbInstancesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDbInstancesInput"} + 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 *ListDbInstancesInput) SetMaxResults(v int64) *ListDbInstancesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDbInstancesInput) SetNextToken(v string) *ListDbInstancesInput { + s.NextToken = &v + return s +} + +type ListDbInstancesOutput struct { + _ struct{} `type:"structure"` + + // A list of Timestream for InfluxDB DB instance summaries. + // + // Items is a required field + Items []*DbInstanceSummary `locationName:"items" type:"list" required:"true"` + + // Token from a previous call of the operation. When this value is provided, + // the service returns results from where the previous response left off. + 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 ListDbInstancesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDbInstancesOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDbInstancesOutput) SetItems(v []*DbInstanceSummary) *ListDbInstancesOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDbInstancesOutput) SetNextToken(v string) *ListDbInstancesOutput { + s.NextToken = &v + return s +} + +type ListDbParameterGroupsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return in the output. If the total number + // of items available is more than the value specified, a NextToken is provided + // in the output. To resume pagination, provide the NextToken value as argument + // of a subsequent API invocation. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The pagination token. To resume pagination, provide the NextToken value as + // argument of a subsequent API invocation. + 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 ListDbParameterGroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDbParameterGroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDbParameterGroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDbParameterGroupsInput"} + 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 *ListDbParameterGroupsInput) SetMaxResults(v int64) *ListDbParameterGroupsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDbParameterGroupsInput) SetNextToken(v string) *ListDbParameterGroupsInput { + s.NextToken = &v + return s +} + +type ListDbParameterGroupsOutput struct { + _ struct{} `type:"structure"` + + // A list of Timestream for InfluxDB DB parameter group summaries. + // + // Items is a required field + Items []*DbParameterGroupSummary `locationName:"items" type:"list" required:"true"` + + // Token from a previous call of the operation. When this value is provided, + // the service returns results from where the previous response left off. + 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 ListDbParameterGroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDbParameterGroupsOutput) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *ListDbParameterGroupsOutput) SetItems(v []*DbParameterGroupSummary) *ListDbParameterGroupsOutput { + s.Items = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListDbParameterGroupsOutput) SetNextToken(v string) *ListDbParameterGroupsOutput { + s.NextToken = &v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the tagged resource. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // A list of tags used to categorize and track resources. + Tags map[string]*string `locationName:"tags" type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +// Configuration for sending InfluxDB engine logs to send to specified S3 bucket. +type LogDeliveryConfiguration struct { + _ struct{} `type:"structure"` + + // Configuration for S3 bucket log delivery. + // + // S3Configuration is a required field + S3Configuration *S3Configuration `locationName:"s3Configuration" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LogDeliveryConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s LogDeliveryConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *LogDeliveryConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LogDeliveryConfiguration"} + if s.S3Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("S3Configuration")) + } + if s.S3Configuration != nil { + if err := s.S3Configuration.Validate(); err != nil { + invalidParams.AddNested("S3Configuration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetS3Configuration sets the S3Configuration field's value. +func (s *LogDeliveryConfiguration) SetS3Configuration(v *S3Configuration) *LogDeliveryConfiguration { + s.S3Configuration = v + return s +} + +// The parameters that comprise the parameter group. +type Parameters struct { + _ struct{} `type:"structure"` + + // All the customer-modifiable InfluxDB v2 parameters in Timestream for InfluxDB. + InfluxDBv2 *InfluxDBv2Parameters `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 Parameters) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Parameters) GoString() string { + return s.String() +} + +// SetInfluxDBv2 sets the InfluxDBv2 field's value. +func (s *Parameters) SetInfluxDBv2(v *InfluxDBv2Parameters) *Parameters { + s.InfluxDBv2 = v + return s +} + +// The requested resource was not found or does not exist. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The identifier for the Timestream for InfluxDB resource associated with the + // request. + // + // ResourceId is a required field + ResourceId *string `locationName:"resourceId" type:"string" required:"true"` + + // The type of Timestream for InfluxDB resource associated with the request. + // + // ResourceType is a required field + ResourceType *string `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 ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Configuration for S3 bucket log delivery. +type S3Configuration struct { + _ struct{} `type:"structure"` + + // The name of the S3 bucket to deliver logs to. + // + // BucketName is a required field + BucketName *string `locationName:"bucketName" min:"3" type:"string" required:"true"` + + // Indicates whether log delivery to the S3 bucket is enabled. + // + // Enabled is a required field + Enabled *bool `locationName:"enabled" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Configuration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s S3Configuration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *S3Configuration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "S3Configuration"} + if s.BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("BucketName")) + } + if s.BucketName != nil && len(*s.BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("BucketName", 3)) + } + if s.Enabled == nil { + invalidParams.Add(request.NewErrParamRequired("Enabled")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucketName sets the BucketName field's value. +func (s *S3Configuration) SetBucketName(v string) *S3Configuration { + s.BucketName = &v + return s +} + +// SetEnabled sets the Enabled field's value. +func (s *S3Configuration) SetEnabled(v bool) *S3Configuration { + s.Enabled = &v + return s +} + +// The request exceeds the service quota. +type ServiceQuotaExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the tagged resource. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // A list of tags used to categorize and track resources. + // + // Tags is a required field + Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The number of seconds the caller should wait before retrying. + RetryAfterSeconds *int64 `locationName:"retryAfterSeconds" type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the tagged resource. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // The keys used to identify the tags. + // + // TagKeys is a required field + TagKeys []*string `locationName:"tagKeys" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + if s.TagKeys != nil && len(s.TagKeys) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateDbInstanceInput struct { + _ struct{} `type:"structure"` + + // The id of the DB parameter group to assign to your DB instance. DB parameter + // groups specify how the database is configured. For example, DB parameter + // groups can specify the limit for query concurrency. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The id of the DB instance. + // + // Identifier is a required field + Identifier *string `locationName:"identifier" min:"3" type:"string" required:"true"` + + // Configuration for sending InfluxDB engine logs to send to specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" 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 UpdateDbInstanceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDbInstanceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateDbInstanceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateDbInstanceInput"} + if s.DbParameterGroupIdentifier != nil && len(*s.DbParameterGroupIdentifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("DbParameterGroupIdentifier", 3)) + } + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 3)) + } + if s.LogDeliveryConfiguration != nil { + if err := s.LogDeliveryConfiguration.Validate(); err != nil { + invalidParams.AddNested("LogDeliveryConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *UpdateDbInstanceInput) SetDbParameterGroupIdentifier(v string) *UpdateDbInstanceInput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetIdentifier sets the Identifier field's value. +func (s *UpdateDbInstanceInput) SetIdentifier(v string) *UpdateDbInstanceInput { + s.Identifier = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *UpdateDbInstanceInput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *UpdateDbInstanceInput { + s.LogDeliveryConfiguration = v + return s +} + +type UpdateDbInstanceOutput struct { + _ struct{} `type:"structure"` + + // The amount of storage allocated for your DB storage type (in gibibytes). + AllocatedStorage *int64 `locationName:"allocatedStorage" min:"20" type:"integer"` + + // The Amazon Resource Name (ARN) of the DB instance. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"1" type:"string" required:"true"` + + // The Availability Zone in which the DB instance resides. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The Timestream for InfluxDB instance type that InfluxDB runs on. + DbInstanceType *string `locationName:"dbInstanceType" type:"string" enum:"DbInstanceType"` + + // The id of the DB parameter group assigned to your DB instance. + DbParameterGroupIdentifier *string `locationName:"dbParameterGroupIdentifier" min:"3" type:"string"` + + // The Timestream for InfluxDB DB storage type that InfluxDB stores data on. + DbStorageType *string `locationName:"dbStorageType" type:"string" enum:"DbStorageType"` + + // Specifies whether the Timestream for InfluxDB is deployed as Single-AZ or + // with a MultiAZ Standby for High availability. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` + + // The endpoint used to connect to InfluxDB. The default InfluxDB port is 8086. + Endpoint *string `locationName:"endpoint" type:"string"` + + // A service-generated unique identifier. + // + // Id is a required field + Id *string `locationName:"id" min:"3" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the AWS Secrets Manager secret containing + // the initial InfluxDB authorization parameters. The secret value is a JSON + // formatted key-value pair holding InfluxDB authorization values: organization, + // bucket, username, and password. + InfluxAuthParametersSecretArn *string `locationName:"influxAuthParametersSecretArn" type:"string"` + + // Configuration for sending InfluxDB engine logs to send to specified S3 bucket. + LogDeliveryConfiguration *LogDeliveryConfiguration `locationName:"logDeliveryConfiguration" type:"structure"` + + // This customer-supplied name uniquely identifies the DB instance when interacting + // with the Amazon Timestream for InfluxDB API and AWS CLI commands. + // + // Name is a required field + Name *string `locationName:"name" min:"3" type:"string" required:"true"` + + // Indicates if the DB instance has a public IP to facilitate access. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // The Availability Zone in which the standby instance is located when deploying + // with a MultiAZ standby instance. + SecondaryAvailabilityZone *string `locationName:"secondaryAvailabilityZone" type:"string"` + + // The status of the DB instance. + Status *string `locationName:"status" type:"string" enum:"Status"` + + // A list of VPC security group IDs associated with the DB instance. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" min:"1" type:"list"` + + // A list of VPC subnet IDs associated with the DB instance. + // + // VpcSubnetIds is a required field + VpcSubnetIds []*string `locationName:"vpcSubnetIds" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDbInstanceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateDbInstanceOutput) GoString() string { + return s.String() +} + +// SetAllocatedStorage sets the AllocatedStorage field's value. +func (s *UpdateDbInstanceOutput) SetAllocatedStorage(v int64) *UpdateDbInstanceOutput { + s.AllocatedStorage = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *UpdateDbInstanceOutput) SetArn(v string) *UpdateDbInstanceOutput { + s.Arn = &v + return s +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *UpdateDbInstanceOutput) SetAvailabilityZone(v string) *UpdateDbInstanceOutput { + s.AvailabilityZone = &v + return s +} + +// SetDbInstanceType sets the DbInstanceType field's value. +func (s *UpdateDbInstanceOutput) SetDbInstanceType(v string) *UpdateDbInstanceOutput { + s.DbInstanceType = &v + return s +} + +// SetDbParameterGroupIdentifier sets the DbParameterGroupIdentifier field's value. +func (s *UpdateDbInstanceOutput) SetDbParameterGroupIdentifier(v string) *UpdateDbInstanceOutput { + s.DbParameterGroupIdentifier = &v + return s +} + +// SetDbStorageType sets the DbStorageType field's value. +func (s *UpdateDbInstanceOutput) SetDbStorageType(v string) *UpdateDbInstanceOutput { + s.DbStorageType = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *UpdateDbInstanceOutput) SetDeploymentType(v string) *UpdateDbInstanceOutput { + s.DeploymentType = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *UpdateDbInstanceOutput) SetEndpoint(v string) *UpdateDbInstanceOutput { + s.Endpoint = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateDbInstanceOutput) SetId(v string) *UpdateDbInstanceOutput { + s.Id = &v + return s +} + +// SetInfluxAuthParametersSecretArn sets the InfluxAuthParametersSecretArn field's value. +func (s *UpdateDbInstanceOutput) SetInfluxAuthParametersSecretArn(v string) *UpdateDbInstanceOutput { + s.InfluxAuthParametersSecretArn = &v + return s +} + +// SetLogDeliveryConfiguration sets the LogDeliveryConfiguration field's value. +func (s *UpdateDbInstanceOutput) SetLogDeliveryConfiguration(v *LogDeliveryConfiguration) *UpdateDbInstanceOutput { + s.LogDeliveryConfiguration = v + return s +} + +// SetName sets the Name field's value. +func (s *UpdateDbInstanceOutput) SetName(v string) *UpdateDbInstanceOutput { + s.Name = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *UpdateDbInstanceOutput) SetPubliclyAccessible(v bool) *UpdateDbInstanceOutput { + s.PubliclyAccessible = &v + return s +} + +// SetSecondaryAvailabilityZone sets the SecondaryAvailabilityZone field's value. +func (s *UpdateDbInstanceOutput) SetSecondaryAvailabilityZone(v string) *UpdateDbInstanceOutput { + s.SecondaryAvailabilityZone = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateDbInstanceOutput) SetStatus(v string) *UpdateDbInstanceOutput { + s.Status = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *UpdateDbInstanceOutput) SetVpcSecurityGroupIds(v []*string) *UpdateDbInstanceOutput { + s.VpcSecurityGroupIds = v + return s +} + +// SetVpcSubnetIds sets the VpcSubnetIds field's value. +func (s *UpdateDbInstanceOutput) SetVpcSubnetIds(v []*string) *UpdateDbInstanceOutput { + s.VpcSubnetIds = v + return s +} + +// The input fails to satisfy the constraints specified by Timestream for InfluxDB. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The reason that validation failed. + // + // Reason is a required field + Reason *string `locationName:"reason" type:"string" required:"true" enum:"ValidationExceptionReason"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +const ( + // DbInstanceTypeDbInfluxMedium is a DbInstanceType enum value + DbInstanceTypeDbInfluxMedium = "db.influx.medium" + + // DbInstanceTypeDbInfluxLarge is a DbInstanceType enum value + DbInstanceTypeDbInfluxLarge = "db.influx.large" + + // DbInstanceTypeDbInfluxXlarge is a DbInstanceType enum value + DbInstanceTypeDbInfluxXlarge = "db.influx.xlarge" + + // DbInstanceTypeDbInflux2xlarge is a DbInstanceType enum value + DbInstanceTypeDbInflux2xlarge = "db.influx.2xlarge" + + // DbInstanceTypeDbInflux4xlarge is a DbInstanceType enum value + DbInstanceTypeDbInflux4xlarge = "db.influx.4xlarge" + + // DbInstanceTypeDbInflux8xlarge is a DbInstanceType enum value + DbInstanceTypeDbInflux8xlarge = "db.influx.8xlarge" + + // DbInstanceTypeDbInflux12xlarge is a DbInstanceType enum value + DbInstanceTypeDbInflux12xlarge = "db.influx.12xlarge" + + // DbInstanceTypeDbInflux16xlarge is a DbInstanceType enum value + DbInstanceTypeDbInflux16xlarge = "db.influx.16xlarge" +) + +// DbInstanceType_Values returns all elements of the DbInstanceType enum +func DbInstanceType_Values() []string { + return []string{ + DbInstanceTypeDbInfluxMedium, + DbInstanceTypeDbInfluxLarge, + DbInstanceTypeDbInfluxXlarge, + DbInstanceTypeDbInflux2xlarge, + DbInstanceTypeDbInflux4xlarge, + DbInstanceTypeDbInflux8xlarge, + DbInstanceTypeDbInflux12xlarge, + DbInstanceTypeDbInflux16xlarge, + } +} + +const ( + // DbStorageTypeInfluxIoincludedT1 is a DbStorageType enum value + DbStorageTypeInfluxIoincludedT1 = "InfluxIOIncludedT1" + + // DbStorageTypeInfluxIoincludedT2 is a DbStorageType enum value + DbStorageTypeInfluxIoincludedT2 = "InfluxIOIncludedT2" + + // DbStorageTypeInfluxIoincludedT3 is a DbStorageType enum value + DbStorageTypeInfluxIoincludedT3 = "InfluxIOIncludedT3" +) + +// DbStorageType_Values returns all elements of the DbStorageType enum +func DbStorageType_Values() []string { + return []string{ + DbStorageTypeInfluxIoincludedT1, + DbStorageTypeInfluxIoincludedT2, + DbStorageTypeInfluxIoincludedT3, + } +} + +const ( + // DeploymentTypeSingleAz is a DeploymentType enum value + DeploymentTypeSingleAz = "SINGLE_AZ" + + // DeploymentTypeWithMultiazStandby is a DeploymentType enum value + DeploymentTypeWithMultiazStandby = "WITH_MULTIAZ_STANDBY" +) + +// DeploymentType_Values returns all elements of the DeploymentType enum +func DeploymentType_Values() []string { + return []string{ + DeploymentTypeSingleAz, + DeploymentTypeWithMultiazStandby, + } +} + +const ( + // LogLevelDebug is a LogLevel enum value + LogLevelDebug = "debug" + + // LogLevelInfo is a LogLevel enum value + LogLevelInfo = "info" + + // LogLevelError is a LogLevel enum value + LogLevelError = "error" +) + +// LogLevel_Values returns all elements of the LogLevel enum +func LogLevel_Values() []string { + return []string{ + LogLevelDebug, + LogLevelInfo, + LogLevelError, + } +} + +const ( + // StatusCreating is a Status enum value + StatusCreating = "CREATING" + + // StatusAvailable is a Status enum value + StatusAvailable = "AVAILABLE" + + // StatusDeleting is a Status enum value + StatusDeleting = "DELETING" + + // StatusModifying is a Status enum value + StatusModifying = "MODIFYING" + + // StatusUpdating is a Status enum value + StatusUpdating = "UPDATING" + + // StatusDeleted is a Status enum value + StatusDeleted = "DELETED" + + // StatusFailed is a Status enum value + StatusFailed = "FAILED" +) + +// Status_Values returns all elements of the Status enum +func Status_Values() []string { + return []string{ + StatusCreating, + StatusAvailable, + StatusDeleting, + StatusModifying, + StatusUpdating, + StatusDeleted, + StatusFailed, + } +} + +const ( + // TracingTypeLog is a TracingType enum value + TracingTypeLog = "log" + + // TracingTypeJaeger is a TracingType enum value + TracingTypeJaeger = "jaeger" +) + +// TracingType_Values returns all elements of the TracingType enum +func TracingType_Values() []string { + return []string{ + TracingTypeLog, + TracingTypeJaeger, + } +} + +const ( + // ValidationExceptionReasonFieldValidationFailed is a ValidationExceptionReason enum value + ValidationExceptionReasonFieldValidationFailed = "FIELD_VALIDATION_FAILED" + + // ValidationExceptionReasonOther is a ValidationExceptionReason enum value + ValidationExceptionReasonOther = "OTHER" +) + +// ValidationExceptionReason_Values returns all elements of the ValidationExceptionReason enum +func ValidationExceptionReason_Values() []string { + return []string{ + ValidationExceptionReasonFieldValidationFailed, + ValidationExceptionReasonOther, + } +} diff --git a/service/timestreaminfluxdb/doc.go b/service/timestreaminfluxdb/doc.go new file mode 100644 index 0000000000..90cd280a5f --- /dev/null +++ b/service/timestreaminfluxdb/doc.go @@ -0,0 +1,33 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package timestreaminfluxdb provides the client and types for making API +// requests to Timestream InfluxDB. +// +// Amazon Timestream for InfluxDB is a managed time-series database engine that +// makes it easy for application developers and DevOps teams to run InfluxDB +// databases on AWS for near real-time time-series applications using open-source +// APIs. With Amazon Timestream for InfluxDB, it is easy to set up, operate, +// and scale time-series workloads that can answer queries with single-digit +// millisecond query response time. +// +// See https://docs.aws.amazon.com/goto/WebAPI/timestream-influxdb-2023-01-27 for more information on this service. +// +// See timestreaminfluxdb package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/timestreaminfluxdb/ +// +// # Using the Client +// +// To contact Timestream InfluxDB with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the Timestream InfluxDB client TimestreamInfluxDB for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/timestreaminfluxdb/#New +package timestreaminfluxdb diff --git a/service/timestreaminfluxdb/errors.go b/service/timestreaminfluxdb/errors.go new file mode 100644 index 0000000000..714565f074 --- /dev/null +++ b/service/timestreaminfluxdb/errors.go @@ -0,0 +1,63 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package timestreaminfluxdb + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // You do not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // The request conflicts with an existing resource in Timestream for InfluxDB. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The request processing has failed because of an unknown error, exception + // or failure. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The requested resource was not found or does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The request exceeds the service quota. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by Timestream for InfluxDB. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/timestreaminfluxdb/service.go b/service/timestreaminfluxdb/service.go new file mode 100644 index 0000000000..88bdc686c4 --- /dev/null +++ b/service/timestreaminfluxdb/service.go @@ -0,0 +1,108 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package timestreaminfluxdb + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +// TimestreamInfluxDB provides the API operation methods for making requests to +// Timestream InfluxDB. See this package's package overview docs +// for details on the service. +// +// TimestreamInfluxDB methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type TimestreamInfluxDB struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "Timestream InfluxDB" // Name of service. + EndpointsID = "timestream-influxdb" // ID to lookup a service endpoint with. + ServiceID = "Timestream InfluxDB" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the TimestreamInfluxDB client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a TimestreamInfluxDB client from just a session. +// svc := timestreaminfluxdb.New(mySession) +// +// // Create a TimestreamInfluxDB client with additional configuration +// svc := timestreaminfluxdb.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *TimestreamInfluxDB { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "timestream-influxdb" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *TimestreamInfluxDB { + svc := &TimestreamInfluxDB{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2023-01-27", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.0", + TargetPrefix: "AmazonTimestreamInfluxDB", + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(jsonrpc.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(jsonrpc.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(jsonrpc.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(jsonrpc.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a TimestreamInfluxDB operation and runs any +// custom request initialization. +func (c *TimestreamInfluxDB) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/timestreaminfluxdb/timestreaminfluxdbiface/interface.go b/service/timestreaminfluxdb/timestreaminfluxdbiface/interface.go new file mode 100644 index 0000000000..1d438ac127 --- /dev/null +++ b/service/timestreaminfluxdb/timestreaminfluxdbiface/interface.go @@ -0,0 +1,114 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package timestreaminfluxdbiface provides an interface to enable mocking the Timestream InfluxDB service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package timestreaminfluxdbiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/timestreaminfluxdb" +) + +// TimestreamInfluxDBAPI provides an interface to enable mocking the +// timestreaminfluxdb.TimestreamInfluxDB service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // Timestream InfluxDB. +// func myFunc(svc timestreaminfluxdbiface.TimestreamInfluxDBAPI) bool { +// // Make svc.CreateDbInstance request +// } +// +// func main() { +// sess := session.New() +// svc := timestreaminfluxdb.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockTimestreamInfluxDBClient struct { +// timestreaminfluxdbiface.TimestreamInfluxDBAPI +// } +// func (m *mockTimestreamInfluxDBClient) CreateDbInstance(input *timestreaminfluxdb.CreateDbInstanceInput) (*timestreaminfluxdb.CreateDbInstanceOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockTimestreamInfluxDBClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type TimestreamInfluxDBAPI interface { + CreateDbInstance(*timestreaminfluxdb.CreateDbInstanceInput) (*timestreaminfluxdb.CreateDbInstanceOutput, error) + CreateDbInstanceWithContext(aws.Context, *timestreaminfluxdb.CreateDbInstanceInput, ...request.Option) (*timestreaminfluxdb.CreateDbInstanceOutput, error) + CreateDbInstanceRequest(*timestreaminfluxdb.CreateDbInstanceInput) (*request.Request, *timestreaminfluxdb.CreateDbInstanceOutput) + + CreateDbParameterGroup(*timestreaminfluxdb.CreateDbParameterGroupInput) (*timestreaminfluxdb.CreateDbParameterGroupOutput, error) + CreateDbParameterGroupWithContext(aws.Context, *timestreaminfluxdb.CreateDbParameterGroupInput, ...request.Option) (*timestreaminfluxdb.CreateDbParameterGroupOutput, error) + CreateDbParameterGroupRequest(*timestreaminfluxdb.CreateDbParameterGroupInput) (*request.Request, *timestreaminfluxdb.CreateDbParameterGroupOutput) + + DeleteDbInstance(*timestreaminfluxdb.DeleteDbInstanceInput) (*timestreaminfluxdb.DeleteDbInstanceOutput, error) + DeleteDbInstanceWithContext(aws.Context, *timestreaminfluxdb.DeleteDbInstanceInput, ...request.Option) (*timestreaminfluxdb.DeleteDbInstanceOutput, error) + DeleteDbInstanceRequest(*timestreaminfluxdb.DeleteDbInstanceInput) (*request.Request, *timestreaminfluxdb.DeleteDbInstanceOutput) + + GetDbInstance(*timestreaminfluxdb.GetDbInstanceInput) (*timestreaminfluxdb.GetDbInstanceOutput, error) + GetDbInstanceWithContext(aws.Context, *timestreaminfluxdb.GetDbInstanceInput, ...request.Option) (*timestreaminfluxdb.GetDbInstanceOutput, error) + GetDbInstanceRequest(*timestreaminfluxdb.GetDbInstanceInput) (*request.Request, *timestreaminfluxdb.GetDbInstanceOutput) + + GetDbParameterGroup(*timestreaminfluxdb.GetDbParameterGroupInput) (*timestreaminfluxdb.GetDbParameterGroupOutput, error) + GetDbParameterGroupWithContext(aws.Context, *timestreaminfluxdb.GetDbParameterGroupInput, ...request.Option) (*timestreaminfluxdb.GetDbParameterGroupOutput, error) + GetDbParameterGroupRequest(*timestreaminfluxdb.GetDbParameterGroupInput) (*request.Request, *timestreaminfluxdb.GetDbParameterGroupOutput) + + ListDbInstances(*timestreaminfluxdb.ListDbInstancesInput) (*timestreaminfluxdb.ListDbInstancesOutput, error) + ListDbInstancesWithContext(aws.Context, *timestreaminfluxdb.ListDbInstancesInput, ...request.Option) (*timestreaminfluxdb.ListDbInstancesOutput, error) + ListDbInstancesRequest(*timestreaminfluxdb.ListDbInstancesInput) (*request.Request, *timestreaminfluxdb.ListDbInstancesOutput) + + ListDbInstancesPages(*timestreaminfluxdb.ListDbInstancesInput, func(*timestreaminfluxdb.ListDbInstancesOutput, bool) bool) error + ListDbInstancesPagesWithContext(aws.Context, *timestreaminfluxdb.ListDbInstancesInput, func(*timestreaminfluxdb.ListDbInstancesOutput, bool) bool, ...request.Option) error + + ListDbParameterGroups(*timestreaminfluxdb.ListDbParameterGroupsInput) (*timestreaminfluxdb.ListDbParameterGroupsOutput, error) + ListDbParameterGroupsWithContext(aws.Context, *timestreaminfluxdb.ListDbParameterGroupsInput, ...request.Option) (*timestreaminfluxdb.ListDbParameterGroupsOutput, error) + ListDbParameterGroupsRequest(*timestreaminfluxdb.ListDbParameterGroupsInput) (*request.Request, *timestreaminfluxdb.ListDbParameterGroupsOutput) + + ListDbParameterGroupsPages(*timestreaminfluxdb.ListDbParameterGroupsInput, func(*timestreaminfluxdb.ListDbParameterGroupsOutput, bool) bool) error + ListDbParameterGroupsPagesWithContext(aws.Context, *timestreaminfluxdb.ListDbParameterGroupsInput, func(*timestreaminfluxdb.ListDbParameterGroupsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*timestreaminfluxdb.ListTagsForResourceInput) (*timestreaminfluxdb.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *timestreaminfluxdb.ListTagsForResourceInput, ...request.Option) (*timestreaminfluxdb.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*timestreaminfluxdb.ListTagsForResourceInput) (*request.Request, *timestreaminfluxdb.ListTagsForResourceOutput) + + TagResource(*timestreaminfluxdb.TagResourceInput) (*timestreaminfluxdb.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *timestreaminfluxdb.TagResourceInput, ...request.Option) (*timestreaminfluxdb.TagResourceOutput, error) + TagResourceRequest(*timestreaminfluxdb.TagResourceInput) (*request.Request, *timestreaminfluxdb.TagResourceOutput) + + UntagResource(*timestreaminfluxdb.UntagResourceInput) (*timestreaminfluxdb.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *timestreaminfluxdb.UntagResourceInput, ...request.Option) (*timestreaminfluxdb.UntagResourceOutput, error) + UntagResourceRequest(*timestreaminfluxdb.UntagResourceInput) (*request.Request, *timestreaminfluxdb.UntagResourceOutput) + + UpdateDbInstance(*timestreaminfluxdb.UpdateDbInstanceInput) (*timestreaminfluxdb.UpdateDbInstanceOutput, error) + UpdateDbInstanceWithContext(aws.Context, *timestreaminfluxdb.UpdateDbInstanceInput, ...request.Option) (*timestreaminfluxdb.UpdateDbInstanceOutput, error) + UpdateDbInstanceRequest(*timestreaminfluxdb.UpdateDbInstanceInput) (*request.Request, *timestreaminfluxdb.UpdateDbInstanceOutput) +} + +var _ TimestreamInfluxDBAPI = (*timestreaminfluxdb.TimestreamInfluxDB)(nil)