From 043803a51d85ebb43f8c91ce85d40c19848a7d07 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Thu, 16 Jun 2022 11:16:10 -0700 Subject: [PATCH] Release v1.44.36 (2022-06-16) (#4445) Release v1.44.36 (2022-06-16) === ### Service Client Updates * `service/redshift-data`: Updates service API and documentation * `service/redshiftserverless`: Adds new service * `service/secretsmanager`: Updates service documentation * Documentation updates for Secrets Manager * `service/securityhub`: Updates service API and documentation --- CHANGELOG.md | 10 + aws/endpoints/defaults.go | 971 +- aws/version.go | 2 +- .../apis/redshift-data/2019-12-20/api-2.json | 33 +- .../apis/redshift-data/2019-12-20/docs-2.json | 32 +- .../redshiftserverless/2021-04-21/api-2.json | 1687 +++ .../redshiftserverless/2021-04-21/docs-2.json | 1075 ++ .../2021-04-21/examples-1.json | 5 + .../2021-04-21/paginators-1.json | 40 + .../secretsmanager/2017-10-17/docs-2.json | 6 +- models/apis/securityhub/2018-10-26/api-2.json | 525 +- .../apis/securityhub/2018-10-26/docs-2.json | 633 +- models/endpoints/endpoints.json | 487 + service/redshiftdataapiservice/api.go | 157 +- service/redshiftdataapiservice/doc.go | 4 +- service/redshiftserverless/api.go | 9457 +++++++++++++++++ service/redshiftserverless/doc.go | 46 + service/redshiftserverless/errors.go | 84 + .../redshiftserverlessiface/interface.go | 230 + service/redshiftserverless/service.go | 107 + service/secretsmanager/api.go | 20 +- service/securityhub/api.go | 3292 +++++- 22 files changed, 18654 insertions(+), 249 deletions(-) create mode 100644 models/apis/redshiftserverless/2021-04-21/api-2.json create mode 100644 models/apis/redshiftserverless/2021-04-21/docs-2.json create mode 100644 models/apis/redshiftserverless/2021-04-21/examples-1.json create mode 100644 models/apis/redshiftserverless/2021-04-21/paginators-1.json create mode 100644 service/redshiftserverless/api.go create mode 100644 service/redshiftserverless/doc.go create mode 100644 service/redshiftserverless/errors.go create mode 100644 service/redshiftserverless/redshiftserverlessiface/interface.go create mode 100644 service/redshiftserverless/service.go diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b345f8f75d..bb27e7ee8dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.44.36 (2022-06-16) +=== + +### Service Client Updates +* `service/redshift-data`: Updates service API and documentation +* `service/redshiftserverless`: Adds new service +* `service/secretsmanager`: Updates service documentation + * Documentation updates for Secrets Manager +* `service/securityhub`: Updates service API and documentation + Release v1.44.35 (2022-06-15) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index dca53fbc415..5c830ecbd5d 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -6478,30 +6478,66 @@ var awsPartition = partition{ }, "drs": service{ Endpoints: serviceEndpoints{ + endpointKey{ + Region: "af-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-east-1", + }: endpoint{}, endpointKey{ Region: "ap-northeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, endpointKey{ Region: "ap-southeast-1", }: endpoint{}, endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-south-1", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, endpointKey{ Region: "eu-west-2", }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ + Region: "me-south-1", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, endpointKey{ Region: "us-east-2", }: endpoint{}, + endpointKey{ + Region: "us-west-1", + }: endpoint{}, endpointKey{ Region: "us-west-2", }: endpoint{}, @@ -15813,6 +15849,14 @@ var awsPartition = partition{ Region: "eu-north-1", }, }, + endpointKey{ + Region: "eu-south-1", + }: endpoint{ + Hostname: "portal.sso.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, endpointKey{ Region: "eu-west-1", }: endpoint{ @@ -16732,6 +16776,43 @@ var awsPartition = partition{ }, }, }, + "redshift-serverless": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, "rekognition": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -22827,137 +22908,713 @@ var awsPartition = partition{ }, }, }, - "wellarchitected": service{ - Endpoints: serviceEndpoints{ - endpointKey{ - Region: "ap-east-1", - }: endpoint{}, - endpointKey{ - Region: "ap-northeast-1", - }: endpoint{}, - endpointKey{ - Region: "ap-northeast-2", - }: endpoint{}, - endpointKey{ - Region: "ap-south-1", - }: endpoint{}, - endpointKey{ - Region: "ap-southeast-1", - }: endpoint{}, - endpointKey{ - Region: "ap-southeast-2", - }: endpoint{}, - endpointKey{ - Region: "ca-central-1", - }: endpoint{}, - endpointKey{ - Region: "eu-central-1", - }: endpoint{}, - endpointKey{ - Region: "eu-north-1", - }: endpoint{}, - endpointKey{ - Region: "eu-west-1", - }: endpoint{}, - endpointKey{ - Region: "eu-west-2", - }: endpoint{}, - endpointKey{ - Region: "eu-west-3", - }: endpoint{}, - endpointKey{ - Region: "me-south-1", - }: endpoint{}, - endpointKey{ - Region: "sa-east-1", - }: endpoint{}, - endpointKey{ - Region: "us-east-1", - }: endpoint{}, - endpointKey{ - Region: "us-east-2", - }: endpoint{}, - endpointKey{ - Region: "us-west-1", - }: endpoint{}, - endpointKey{ - Region: "us-west-2", - }: endpoint{}, - }, - }, - "wisdom": service{ + "wafv2": service{ Endpoints: serviceEndpoints{ endpointKey{ - Region: "ap-northeast-1", - }: endpoint{}, - endpointKey{ - Region: "ap-southeast-2", - }: endpoint{}, - endpointKey{ - Region: "eu-central-1", - }: endpoint{}, + Region: "af-south-1", + }: endpoint{ + Hostname: "wafv2.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + }, endpointKey{ - Region: "eu-west-2", - }: endpoint{}, + Region: "af-south-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + }, endpointKey{ - Region: "us-east-1", - }: endpoint{}, + Region: "ap-east-1", + }: endpoint{ + Hostname: "wafv2.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + }, endpointKey{ - Region: "us-west-2", - }: endpoint{}, - }, - }, - "workdocs": service{ - Endpoints: serviceEndpoints{ + Region: "ap-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + }, endpointKey{ Region: "ap-northeast-1", - }: endpoint{}, + }: endpoint{ + Hostname: "wafv2.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, endpointKey{ - Region: "ap-southeast-1", - }: endpoint{}, + Region: "ap-northeast-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + }, endpointKey{ - Region: "ap-southeast-2", - }: endpoint{}, + Region: "ap-northeast-2", + }: endpoint{ + Hostname: "wafv2.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + }, endpointKey{ - Region: "eu-west-1", - }: endpoint{}, + Region: "ap-northeast-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + }, endpointKey{ - Region: "fips-us-east-1", + Region: "ap-northeast-3", }: endpoint{ - Hostname: "workdocs-fips.us-east-1.amazonaws.com", + Hostname: "wafv2.ap-northeast-3.amazonaws.com", CredentialScope: credentialScope{ - Region: "us-east-1", + Region: "ap-northeast-3", }, - Deprecated: boxedTrue, }, endpointKey{ - Region: "fips-us-west-2", + Region: "ap-northeast-3", + Variant: fipsVariant, }: endpoint{ - Hostname: "workdocs-fips.us-west-2.amazonaws.com", + Hostname: "wafv2-fips.ap-northeast-3.amazonaws.com", CredentialScope: credentialScope{ - Region: "us-west-2", + Region: "ap-northeast-3", }, - Deprecated: boxedTrue, }, endpointKey{ - Region: "us-east-1", - }: endpoint{}, + Region: "ap-south-1", + }: endpoint{ + Hostname: "wafv2.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, + }, endpointKey{ - Region: "us-east-1", + Region: "ap-south-1", Variant: fipsVariant, }: endpoint{ - Hostname: "workdocs-fips.us-east-1.amazonaws.com", + Hostname: "wafv2-fips.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, }, endpointKey{ - Region: "us-west-2", - }: endpoint{}, + Region: "ap-southeast-1", + }: endpoint{ + Hostname: "wafv2.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, + }, endpointKey{ - Region: "us-west-2", + Region: "ap-southeast-1", Variant: fipsVariant, }: endpoint{ - Hostname: "workdocs-fips.us-west-2.amazonaws.com", + Hostname: "wafv2-fips.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, }, - }, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{ + Hostname: "wafv2.ap-southeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-2", + }, + }, + endpointKey{ + Region: "ap-southeast-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ap-southeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-2", + }, + }, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{ + Hostname: "wafv2.ap-southeast-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-3", + }, + }, + endpointKey{ + Region: "ap-southeast-3", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ap-southeast-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-3", + }, + }, + endpointKey{ + Region: "ca-central-1", + }: endpoint{ + Hostname: "wafv2.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + }, + endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + }, + endpointKey{ + Region: "eu-central-1", + }: endpoint{ + Hostname: "wafv2.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + }, + endpointKey{ + Region: "eu-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + }, + endpointKey{ + Region: "eu-north-1", + }: endpoint{ + Hostname: "wafv2.eu-north-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-north-1", + }, + }, + endpointKey{ + Region: "eu-north-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-north-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-north-1", + }, + }, + endpointKey{ + Region: "eu-south-1", + }: endpoint{ + Hostname: "wafv2.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, + endpointKey{ + Region: "eu-south-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, + endpointKey{ + Region: "eu-west-1", + }: endpoint{ + Hostname: "wafv2.eu-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-1", + }, + }, + endpointKey{ + Region: "eu-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-1", + }, + }, + endpointKey{ + Region: "eu-west-2", + }: endpoint{ + Hostname: "wafv2.eu-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-2", + }, + }, + endpointKey{ + Region: "eu-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-2", + }, + }, + endpointKey{ + Region: "eu-west-3", + }: endpoint{ + Hostname: "wafv2.eu-west-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-3", + }, + }, + endpointKey{ + Region: "eu-west-3", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.eu-west-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-3", + }, + }, + endpointKey{ + Region: "fips-af-south-1", + }: endpoint{ + Hostname: "wafv2-fips.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-east-1", + }: endpoint{ + Hostname: "wafv2-fips.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-northeast-1", + }: endpoint{ + Hostname: "wafv2-fips.ap-northeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-northeast-2", + }: endpoint{ + Hostname: "wafv2-fips.ap-northeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-northeast-3", + }: endpoint{ + Hostname: "wafv2-fips.ap-northeast-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-northeast-3", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-south-1", + }: endpoint{ + Hostname: "wafv2-fips.ap-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-south-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-southeast-1", + }: endpoint{ + Hostname: "wafv2-fips.ap-southeast-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-southeast-2", + }: endpoint{ + Hostname: "wafv2-fips.ap-southeast-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ap-southeast-3", + }: endpoint{ + Hostname: "wafv2-fips.ap-southeast-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-southeast-3", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ca-central-1", + }: endpoint{ + Hostname: "wafv2-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-central-1", + }: endpoint{ + Hostname: "wafv2-fips.eu-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-north-1", + }: endpoint{ + Hostname: "wafv2-fips.eu-north-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-north-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-south-1", + }: endpoint{ + Hostname: "wafv2-fips.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-west-1", + }: endpoint{ + Hostname: "wafv2-fips.eu-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-west-2", + }: endpoint{ + Hostname: "wafv2-fips.eu-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-eu-west-3", + }: endpoint{ + Hostname: "wafv2-fips.eu-west-3.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-west-3", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-me-south-1", + }: endpoint{ + Hostname: "wafv2-fips.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-sa-east-1", + }: endpoint{ + Hostname: "wafv2-fips.sa-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "sa-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + Hostname: "wafv2-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-east-2", + }: endpoint{ + Hostname: "wafv2-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-1", + }: endpoint{ + Hostname: "wafv2-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + Hostname: "wafv2-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "me-south-1", + }: endpoint{ + Hostname: "wafv2.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + }, + endpointKey{ + Region: "me-south-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + }, + endpointKey{ + Region: "sa-east-1", + }: endpoint{ + Hostname: "wafv2.sa-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "sa-east-1", + }, + }, + endpointKey{ + Region: "sa-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.sa-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "sa-east-1", + }, + }, + endpointKey{ + Region: "us-east-1", + }: endpoint{ + Hostname: "wafv2.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + endpointKey{ + Region: "us-east-2", + }: endpoint{ + Hostname: "wafv2.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + endpointKey{ + Region: "us-west-1", + }: endpoint{ + Hostname: "wafv2.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + endpointKey{ + Region: "us-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{ + Hostname: "wafv2.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + }, + }, + "wellarchitected": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-east-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ + Region: "me-south-1", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-1", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, + "wisdom": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, + "workdocs": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "fips-us-east-1", + }: endpoint{ + Hostname: "workdocs-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-west-2", + }: endpoint{ + Hostname: "workdocs-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "workdocs-fips.us-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "workdocs-fips.us-west-2.amazonaws.com", + }, + }, }, "workmail": service{ Defaults: endpointDefaults{ @@ -24784,6 +25441,62 @@ var awscnPartition = partition{ }, }, }, + "wafv2": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "cn-north-1", + }: endpoint{ + Hostname: "wafv2.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + }, + endpointKey{ + Region: "cn-north-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + }, + endpointKey{ + Region: "cn-northwest-1", + }: endpoint{ + Hostname: "wafv2.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + endpointKey{ + Region: "cn-northwest-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + endpointKey{ + Region: "fips-cn-north-1", + }: endpoint{ + Hostname: "wafv2-fips.cn-north-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-north-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-cn-northwest-1", + }: endpoint{ + Hostname: "wafv2-fips.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + Deprecated: boxedTrue, + }, + }, + }, "workspaces": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -29600,6 +30313,62 @@ var awsusgovPartition = partition{ }, }, }, + "wafv2": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "wafv2-fips.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-us-gov-west-1", + }: endpoint{ + Hostname: "wafv2-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-gov-east-1", + }: endpoint{ + Hostname: "wafv2.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, + endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, + endpointKey{ + Region: "us-gov-west-1", + }: endpoint{ + Hostname: "wafv2.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, + endpointKey{ + Region: "us-gov-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "wafv2-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, + }, + }, "workspaces": service{ Endpoints: serviceEndpoints{ endpointKey{ diff --git a/aws/version.go b/aws/version.go index 5d9adab2d83..7dfccb3d86d 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.44.35" +const SDKVersion = "1.44.36" diff --git a/models/apis/redshift-data/2019-12-20/api-2.json b/models/apis/redshift-data/2019-12-20/api-2.json index 5b491e46010..0511a07085d 100644 --- a/models/apis/redshift-data/2019-12-20/api-2.json +++ b/models/apis/redshift-data/2019-12-20/api-2.json @@ -188,7 +188,8 @@ "SecretArn":{"shape":"SecretArn"}, "Sqls":{"shape":"SqlList"}, "StatementName":{"shape":"StatementNameString"}, - "WithEvent":{"shape":"Boolean"} + "WithEvent":{"shape":"Boolean"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "BatchExecuteStatementOutput":{ @@ -199,7 +200,8 @@ "Database":{"shape":"String"}, "DbUser":{"shape":"String"}, "Id":{"shape":"StatementId"}, - "SecretArn":{"shape":"SecretArn"} + "SecretArn":{"shape":"SecretArn"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "Blob":{"type":"blob"}, @@ -299,7 +301,8 @@ "SecretArn":{"shape":"SecretArn"}, "Status":{"shape":"StatusString"}, "SubStatements":{"shape":"SubStatementList"}, - "UpdatedAt":{"shape":"Timestamp"} + "UpdatedAt":{"shape":"Timestamp"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "DescribeTableRequest":{ @@ -314,7 +317,8 @@ "NextToken":{"shape":"String"}, "Schema":{"shape":"String"}, "SecretArn":{"shape":"SecretArn"}, - "Table":{"shape":"String"} + "Table":{"shape":"String"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "DescribeTableResponse":{ @@ -352,7 +356,8 @@ "SecretArn":{"shape":"SecretArn"}, "Sql":{"shape":"StatementString"}, "StatementName":{"shape":"StatementNameString"}, - "WithEvent":{"shape":"Boolean"} + "WithEvent":{"shape":"Boolean"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "ExecuteStatementOutput":{ @@ -363,7 +368,8 @@ "Database":{"shape":"String"}, "DbUser":{"shape":"String"}, "Id":{"shape":"StatementId"}, - "SecretArn":{"shape":"SecretArn"} + "SecretArn":{"shape":"SecretArn"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "Field":{ @@ -419,7 +425,8 @@ "DbUser":{"shape":"String"}, "MaxResults":{"shape":"PageSize"}, "NextToken":{"shape":"String"}, - "SecretArn":{"shape":"SecretArn"} + "SecretArn":{"shape":"SecretArn"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "ListDatabasesResponse":{ @@ -440,7 +447,8 @@ "MaxResults":{"shape":"PageSize"}, "NextToken":{"shape":"String"}, "SchemaPattern":{"shape":"String"}, - "SecretArn":{"shape":"SecretArn"} + "SecretArn":{"shape":"SecretArn"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "ListSchemasResponse":{ @@ -485,7 +493,8 @@ "NextToken":{"shape":"String"}, "SchemaPattern":{"shape":"String"}, "SecretArn":{"shape":"SecretArn"}, - "TablePattern":{"shape":"String"} + "TablePattern":{"shape":"String"}, + "WorkgroupName":{"shape":"WorkgroupNameString"} } }, "ListTablesResponse":{ @@ -652,6 +661,12 @@ }, "exception":true }, + "WorkgroupNameString":{ + "type":"string", + "max":64, + "min":3, + "pattern":"^[a-z0-9-]+$" + }, "bool":{"type":"boolean"} } } diff --git a/models/apis/redshift-data/2019-12-20/docs-2.json b/models/apis/redshift-data/2019-12-20/docs-2.json index 6a76796048e..a6bbf91cfbc 100644 --- a/models/apis/redshift-data/2019-12-20/docs-2.json +++ b/models/apis/redshift-data/2019-12-20/docs-2.json @@ -1,17 +1,17 @@ { "version": "2.0", - "service": "

You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds.

For more information about the Amazon Redshift Data API, see Using the Amazon Redshift Data API in the Amazon Redshift Cluster Management Guide.

", + "service": "

You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds.

For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Cluster Management Guide.

", "operations": { - "BatchExecuteStatement": "

Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:

", + "BatchExecuteStatement": "

Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:

", "CancelStatement": "

Cancels a running query. To be canceled, a query must be running.

", "DescribeStatement": "

Describes the details about a specific instance when a query was run by the Amazon Redshift Data API. The information includes when the query started, when it finished, the query status, the number of rows returned, and the SQL statement.

", - "DescribeTable": "

Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:

", - "ExecuteStatement": "

Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters:

", + "DescribeTable": "

Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:

", + "ExecuteStatement": "

Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters:

", "GetStatementResult": "

Fetches the temporarily cached result of an SQL statement. A token is returned to page through the statement results.

", - "ListDatabases": "

List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:

", - "ListSchemas": "

Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:

", + "ListDatabases": "

List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:

", + "ListSchemas": "

Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:

", "ListStatements": "

List of SQL statements. By default, only finished statements are shown. A token is returned to page through the statement list.

", - "ListTables": "

List the tables in a database. If neither SchemaPattern nor TablePattern are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:

" + "ListTables": "

List the tables in a database. If neither SchemaPattern nor TablePattern are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:

" }, "shapes": { "ActiveStatementsExceededException": { @@ -232,10 +232,10 @@ "base": null, "refs": { "BatchExecuteStatementInput$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

", - "BatchExecuteStatementOutput$ClusterIdentifier": "

The cluster identifier. This parameter is not returned when connecting to a serverless endpoint.

", + "BatchExecuteStatementOutput$ClusterIdentifier": "

The cluster identifier. This element is not returned when connecting to a serverless workgroup.

", "DescribeTableRequest$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

", "ExecuteStatementInput$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

", - "ExecuteStatementOutput$ClusterIdentifier": "

The cluster identifier. This parameter is not returned when connecting to a serverless endpoint.

", + "ExecuteStatementOutput$ClusterIdentifier": "

The cluster identifier. This element is not returned when connecting to a serverless workgroup.

", "ListDatabasesRequest$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

", "ListSchemasRequest$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

", "ListTablesRequest$ClusterIdentifier": "

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

" @@ -505,6 +505,20 @@ "refs": { } }, + "WorkgroupNameString": { + "base": null, + "refs": { + "BatchExecuteStatementInput$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

", + "BatchExecuteStatementOutput$WorkgroupName": "

The serverless workgroup name. This element is not returned when connecting to a provisioned cluster.

", + "DescribeStatementResponse$WorkgroupName": "

The serverless workgroup name.

", + "DescribeTableRequest$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

", + "ExecuteStatementInput$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

", + "ExecuteStatementOutput$WorkgroupName": "

The serverless workgroup name. This element is not returned when connecting to a provisioned cluster.

", + "ListDatabasesRequest$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

", + "ListSchemasRequest$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

", + "ListTablesRequest$WorkgroupName": "

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

" + } + }, "bool": { "base": null, "refs": { diff --git a/models/apis/redshiftserverless/2021-04-21/api-2.json b/models/apis/redshiftserverless/2021-04-21/api-2.json new file mode 100644 index 00000000000..048287be978 --- /dev/null +++ b/models/apis/redshiftserverless/2021-04-21/api-2.json @@ -0,0 +1,1687 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2021-04-21", + "endpointPrefix":"redshift-serverless", + "jsonVersion":"1.1", + "protocol":"json", + "serviceFullName":"Redshift Serverless", + "serviceId":"RedshiftServerless", + "signatureVersion":"v4", + "signingName":"redshift-serverless", + "targetPrefix":"RedshiftServerless", + "uid":"redshiftserverless-2021-04-21" + }, + "operations":{ + "ConvertRecoveryPointToSnapshot":{ + "name":"ConvertRecoveryPointToSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ConvertRecoveryPointToSnapshotRequest"}, + "output":{"shape":"ConvertRecoveryPointToSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "CreateEndpointAccess":{ + "name":"CreateEndpointAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateEndpointAccessRequest"}, + "output":{"shape":"CreateEndpointAccessResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateNamespace":{ + "name":"CreateNamespace", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateNamespaceRequest"}, + "output":{"shape":"CreateNamespaceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"TooManyTagsException"} + ], + "idempotent":true + }, + "CreateSnapshot":{ + "name":"CreateSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateSnapshotRequest"}, + "output":{"shape":"CreateSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateUsageLimit":{ + "name":"CreateUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateUsageLimitRequest"}, + "output":{"shape":"CreateUsageLimitResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "CreateWorkgroup":{ + "name":"CreateWorkgroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateWorkgroupRequest"}, + "output":{"shape":"CreateWorkgroupResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InsufficientCapacityException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"TooManyTagsException"} + ], + "idempotent":true + }, + "DeleteEndpointAccess":{ + "name":"DeleteEndpointAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteEndpointAccessRequest"}, + "output":{"shape":"DeleteEndpointAccessResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "DeleteNamespace":{ + "name":"DeleteNamespace", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteNamespaceRequest"}, + "output":{"shape":"DeleteNamespaceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "DeleteResourcePolicy":{ + "name":"DeleteResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteResourcePolicyRequest"}, + "output":{"shape":"DeleteResourcePolicyResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "DeleteSnapshot":{ + "name":"DeleteSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteSnapshotRequest"}, + "output":{"shape":"DeleteSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "DeleteUsageLimit":{ + "name":"DeleteUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteUsageLimitRequest"}, + "output":{"shape":"DeleteUsageLimitResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "DeleteWorkgroup":{ + "name":"DeleteWorkgroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteWorkgroupRequest"}, + "output":{"shape":"DeleteWorkgroupResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ], + "idempotent":true + }, + "GetCredentials":{ + "name":"GetCredentials", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetCredentialsRequest"}, + "output":{"shape":"GetCredentialsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "GetEndpointAccess":{ + "name":"GetEndpointAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEndpointAccessRequest"}, + "output":{"shape":"GetEndpointAccessResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "GetNamespace":{ + "name":"GetNamespace", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetNamespaceRequest"}, + "output":{"shape":"GetNamespaceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "GetRecoveryPoint":{ + "name":"GetRecoveryPoint", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetRecoveryPointRequest"}, + "output":{"shape":"GetRecoveryPointResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "GetResourcePolicy":{ + "name":"GetResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetResourcePolicyRequest"}, + "output":{"shape":"GetResourcePolicyResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "GetSnapshot":{ + "name":"GetSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetSnapshotRequest"}, + "output":{"shape":"GetSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "GetUsageLimit":{ + "name":"GetUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetUsageLimitRequest"}, + "output":{"shape":"GetUsageLimitResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "GetWorkgroup":{ + "name":"GetWorkgroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetWorkgroupRequest"}, + "output":{"shape":"GetWorkgroupResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "ListEndpointAccess":{ + "name":"ListEndpointAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListEndpointAccessRequest"}, + "output":{"shape":"ListEndpointAccessResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "ListNamespaces":{ + "name":"ListNamespaces", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListNamespacesRequest"}, + "output":{"shape":"ListNamespacesResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + }, + "ListRecoveryPoints":{ + "name":"ListRecoveryPoints", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListRecoveryPointsRequest"}, + "output":{"shape":"ListRecoveryPointsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + }, + "ListSnapshots":{ + "name":"ListSnapshots", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListSnapshotsRequest"}, + "output":{"shape":"ListSnapshotsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "ListUsageLimits":{ + "name":"ListUsageLimits", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListUsageLimitsRequest"}, + "output":{"shape":"ListUsageLimitsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InvalidPaginationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "ListWorkgroups":{ + "name":"ListWorkgroups", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListWorkgroupsRequest"}, + "output":{"shape":"ListWorkgroupsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + }, + "PutResourcePolicy":{ + "name":"PutResourcePolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutResourcePolicyRequest"}, + "output":{"shape":"PutResourcePolicyResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ] + }, + "RestoreFromRecoveryPoint":{ + "name":"RestoreFromRecoveryPoint", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RestoreFromRecoveryPointRequest"}, + "output":{"shape":"RestoreFromRecoveryPointResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "RestoreFromSnapshot":{ + "name":"RestoreFromSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RestoreFromSnapshotRequest"}, + "output":{"shape":"RestoreFromSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"} + ], + "idempotent":true + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"TagResourceRequest"}, + "output":{"shape":"TagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"TooManyTagsException"}, + {"shape":"ThrottlingException"} + ] + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UntagResourceRequest"}, + "output":{"shape":"UntagResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"} + ] + }, + "UpdateEndpointAccess":{ + "name":"UpdateEndpointAccess", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateEndpointAccessRequest"}, + "output":{"shape":"UpdateEndpointAccessResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "UpdateNamespace":{ + "name":"UpdateNamespace", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateNamespaceRequest"}, + "output":{"shape":"UpdateNamespaceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "UpdateSnapshot":{ + "name":"UpdateSnapshot", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSnapshotRequest"}, + "output":{"shape":"UpdateSnapshotResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "UpdateUsageLimit":{ + "name":"UpdateUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateUsageLimitRequest"}, + "output":{"shape":"UpdateUsageLimitResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + }, + "UpdateWorkgroup":{ + "name":"UpdateWorkgroup", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateWorkgroupRequest"}, + "output":{"shape":"UpdateWorkgroupResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"InsufficientCapacityException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "members":{ + "code":{"shape":"String"}, + "message":{"shape":"String"} + }, + "exception":true + }, + "AccountIdList":{ + "type":"list", + "member":{"shape":"String"} + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "ConfigParameter":{ + "type":"structure", + "members":{ + "parameterKey":{"shape":"ParameterKey"}, + "parameterValue":{"shape":"ParameterValue"} + } + }, + "ConfigParameterList":{ + "type":"list", + "member":{"shape":"ConfigParameter"} + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "ConvertRecoveryPointToSnapshotRequest":{ + "type":"structure", + "required":[ + "recoveryPointId", + "snapshotName" + ], + "members":{ + "recoveryPointId":{"shape":"String"}, + "retentionPeriod":{"shape":"Integer"}, + "snapshotName":{"shape":"String"} + } + }, + "ConvertRecoveryPointToSnapshotResponse":{ + "type":"structure", + "members":{ + "snapshot":{"shape":"Snapshot"} + } + }, + "CreateEndpointAccessRequest":{ + "type":"structure", + "required":[ + "endpointName", + "subnetIds", + "workgroupName" + ], + "members":{ + "endpointName":{"shape":"String"}, + "subnetIds":{"shape":"SubnetIdList"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"}, + "workgroupName":{"shape":"String"} + } + }, + "CreateEndpointAccessResponse":{ + "type":"structure", + "members":{ + "endpoint":{"shape":"EndpointAccess"} + } + }, + "CreateNamespaceRequest":{ + "type":"structure", + "required":["namespaceName"], + "members":{ + "adminUserPassword":{"shape":"DbPassword"}, + "adminUsername":{"shape":"DbUser"}, + "dbName":{"shape":"String"}, + "defaultIamRoleArn":{"shape":"String"}, + "iamRoles":{"shape":"IamRoleArnList"}, + "kmsKeyId":{"shape":"String"}, + "logExports":{"shape":"LogExportList"}, + "namespaceName":{"shape":"NamespaceName"}, + "tags":{"shape":"TagList"} + } + }, + "CreateNamespaceResponse":{ + "type":"structure", + "members":{ + "namespace":{"shape":"Namespace"} + } + }, + "CreateSnapshotRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "snapshotName" + ], + "members":{ + "namespaceName":{"shape":"String"}, + "retentionPeriod":{"shape":"Integer"}, + "snapshotName":{"shape":"String"} + } + }, + "CreateSnapshotResponse":{ + "type":"structure", + "members":{ + "snapshot":{"shape":"Snapshot"} + } + }, + "CreateUsageLimitRequest":{ + "type":"structure", + "required":[ + "amount", + "resourceArn", + "usageType" + ], + "members":{ + "amount":{"shape":"Long"}, + "breachAction":{"shape":"UsageLimitBreachAction"}, + "period":{"shape":"UsageLimitPeriod"}, + "resourceArn":{"shape":"String"}, + "usageType":{"shape":"UsageLimitUsageType"} + } + }, + "CreateUsageLimitResponse":{ + "type":"structure", + "members":{ + "usageLimit":{"shape":"UsageLimit"} + } + }, + "CreateWorkgroupRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "workgroupName" + ], + "members":{ + "baseCapacity":{"shape":"Integer"}, + "configParameters":{"shape":"ConfigParameterList"}, + "enhancedVpcRouting":{"shape":"Boolean"}, + "namespaceName":{"shape":"NamespaceName"}, + "publiclyAccessible":{"shape":"Boolean"}, + "securityGroupIds":{"shape":"SecurityGroupIdList"}, + "subnetIds":{"shape":"SubnetIdList"}, + "tags":{"shape":"TagList"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "CreateWorkgroupResponse":{ + "type":"structure", + "members":{ + "workgroup":{"shape":"Workgroup"} + } + }, + "DbName":{"type":"string"}, + "DbPassword":{ + "type":"string", + "sensitive":true + }, + "DbUser":{ + "type":"string", + "sensitive":true + }, + "DeleteEndpointAccessRequest":{ + "type":"structure", + "required":["endpointName"], + "members":{ + "endpointName":{"shape":"String"} + } + }, + "DeleteEndpointAccessResponse":{ + "type":"structure", + "members":{ + "endpoint":{"shape":"EndpointAccess"} + } + }, + "DeleteNamespaceRequest":{ + "type":"structure", + "required":["namespaceName"], + "members":{ + "finalSnapshotName":{"shape":"String"}, + "finalSnapshotRetentionPeriod":{"shape":"Integer"}, + "namespaceName":{"shape":"NamespaceName"} + } + }, + "DeleteNamespaceResponse":{ + "type":"structure", + "required":["namespace"], + "members":{ + "namespace":{"shape":"Namespace"} + } + }, + "DeleteResourcePolicyRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{"shape":"String"} + } + }, + "DeleteResourcePolicyResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteSnapshotRequest":{ + "type":"structure", + "required":["snapshotName"], + "members":{ + "snapshotName":{"shape":"String"} + } + }, + "DeleteSnapshotResponse":{ + "type":"structure", + "members":{ + "snapshot":{"shape":"Snapshot"} + } + }, + "DeleteUsageLimitRequest":{ + "type":"structure", + "required":["usageLimitId"], + "members":{ + "usageLimitId":{"shape":"String"} + } + }, + "DeleteUsageLimitResponse":{ + "type":"structure", + "members":{ + "usageLimit":{"shape":"UsageLimit"} + } + }, + "DeleteWorkgroupRequest":{ + "type":"structure", + "required":["workgroupName"], + "members":{ + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "DeleteWorkgroupResponse":{ + "type":"structure", + "required":["workgroup"], + "members":{ + "workgroup":{"shape":"Workgroup"} + } + }, + "Double":{ + "type":"double", + "box":true + }, + "Endpoint":{ + "type":"structure", + "members":{ + "address":{"shape":"String"}, + "port":{"shape":"Integer"}, + "vpcEndpoints":{"shape":"VpcEndpointList"} + } + }, + "EndpointAccess":{ + "type":"structure", + "members":{ + "address":{"shape":"String"}, + "endpointArn":{"shape":"String"}, + "endpointCreateTime":{"shape":"SyntheticTimestamp_date_time"}, + "endpointName":{"shape":"String"}, + "endpointStatus":{"shape":"String"}, + "port":{"shape":"Integer"}, + "subnetIds":{"shape":"SubnetIdList"}, + "vpcEndpoint":{"shape":"VpcEndpoint"}, + "vpcSecurityGroups":{"shape":"VpcSecurityGroupMembershipList"}, + "workgroupName":{"shape":"String"} + } + }, + "EndpointAccessList":{ + "type":"list", + "member":{"shape":"EndpointAccess"} + }, + "GetCredentialsRequest":{ + "type":"structure", + "required":["workgroupName"], + "members":{ + "dbName":{"shape":"DbName"}, + "durationSeconds":{"shape":"Integer"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "GetCredentialsResponse":{ + "type":"structure", + "members":{ + "dbPassword":{"shape":"DbPassword"}, + "dbUser":{"shape":"DbUser"}, + "expiration":{"shape":"Timestamp"}, + "nextRefreshTime":{"shape":"Timestamp"} + } + }, + "GetEndpointAccessRequest":{ + "type":"structure", + "required":["endpointName"], + "members":{ + "endpointName":{"shape":"String"} + } + }, + "GetEndpointAccessResponse":{ + "type":"structure", + "members":{ + "endpoint":{"shape":"EndpointAccess"} + } + }, + "GetNamespaceRequest":{ + "type":"structure", + "required":["namespaceName"], + "members":{ + "namespaceName":{"shape":"NamespaceName"} + } + }, + "GetNamespaceResponse":{ + "type":"structure", + "required":["namespace"], + "members":{ + "namespace":{"shape":"Namespace"} + } + }, + "GetRecoveryPointRequest":{ + "type":"structure", + "required":["recoveryPointId"], + "members":{ + "recoveryPointId":{"shape":"String"} + } + }, + "GetRecoveryPointResponse":{ + "type":"structure", + "members":{ + "recoveryPoint":{"shape":"RecoveryPoint"} + } + }, + "GetResourcePolicyRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{"shape":"String"} + } + }, + "GetResourcePolicyResponse":{ + "type":"structure", + "members":{ + "resourcePolicy":{"shape":"ResourcePolicy"} + } + }, + "GetSnapshotRequest":{ + "type":"structure", + "members":{ + "ownerAccount":{"shape":"String"}, + "snapshotArn":{"shape":"String"}, + "snapshotName":{"shape":"String"} + } + }, + "GetSnapshotResponse":{ + "type":"structure", + "members":{ + "snapshot":{"shape":"Snapshot"} + } + }, + "GetUsageLimitRequest":{ + "type":"structure", + "required":["usageLimitId"], + "members":{ + "usageLimitId":{"shape":"String"} + } + }, + "GetUsageLimitResponse":{ + "type":"structure", + "members":{ + "usageLimit":{"shape":"UsageLimit"} + } + }, + "GetWorkgroupRequest":{ + "type":"structure", + "required":["workgroupName"], + "members":{ + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "GetWorkgroupResponse":{ + "type":"structure", + "required":["workgroup"], + "members":{ + "workgroup":{"shape":"Workgroup"} + } + }, + "IamRoleArn":{"type":"string"}, + "IamRoleArnList":{ + "type":"list", + "member":{"shape":"IamRoleArn"} + }, + "InsufficientCapacityException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true, + "retryable":{"throttling":false} + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "InvalidPaginationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "KmsKeyId":{"type":"string"}, + "ListEndpointAccessRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListEndpointAccessRequestMaxResultsInteger", + "box":true + }, + "nextToken":{"shape":"String"}, + "vpcId":{"shape":"String"}, + "workgroupName":{"shape":"String"} + } + }, + "ListEndpointAccessRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListEndpointAccessResponse":{ + "type":"structure", + "required":["endpoints"], + "members":{ + "endpoints":{"shape":"EndpointAccessList"}, + "nextToken":{"shape":"String"} + } + }, + "ListNamespacesRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListNamespacesRequestMaxResultsInteger", + "box":true + }, + "nextToken":{"shape":"String"} + } + }, + "ListNamespacesRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListNamespacesResponse":{ + "type":"structure", + "required":["namespaces"], + "members":{ + "namespaces":{"shape":"NamespaceList"}, + "nextToken":{"shape":"String"} + } + }, + "ListRecoveryPointsRequest":{ + "type":"structure", + "members":{ + "endTime":{"shape":"Timestamp"}, + "maxResults":{ + "shape":"ListRecoveryPointsRequestMaxResultsInteger", + "box":true + }, + "namespaceName":{"shape":"NamespaceName"}, + "nextToken":{"shape":"String"}, + "startTime":{"shape":"Timestamp"} + } + }, + "ListRecoveryPointsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListRecoveryPointsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"String"}, + "recoveryPoints":{"shape":"RecoveryPointList"} + } + }, + "ListSnapshotsRequest":{ + "type":"structure", + "members":{ + "endTime":{"shape":"Timestamp"}, + "maxResults":{ + "shape":"ListSnapshotsRequestMaxResultsInteger", + "box":true + }, + "namespaceArn":{"shape":"String"}, + "namespaceName":{"shape":"String"}, + "nextToken":{"shape":"String"}, + "ownerAccount":{"shape":"String"}, + "startTime":{"shape":"Timestamp"} + } + }, + "ListSnapshotsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListSnapshotsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"String"}, + "snapshots":{"shape":"SnapshotList"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["resourceArn"], + "members":{ + "resourceArn":{"shape":"AmazonResourceName"} + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"TagList"} + } + }, + "ListUsageLimitsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListUsageLimitsRequestMaxResultsInteger", + "box":true + }, + "nextToken":{"shape":"PaginationToken"}, + "resourceArn":{"shape":"String"}, + "usageType":{"shape":"UsageLimitUsageType"} + } + }, + "ListUsageLimitsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListUsageLimitsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"PaginationToken"}, + "usageLimits":{"shape":"UsageLimits"} + } + }, + "ListWorkgroupsRequest":{ + "type":"structure", + "members":{ + "maxResults":{ + "shape":"ListWorkgroupsRequestMaxResultsInteger", + "box":true + }, + "nextToken":{"shape":"String"} + } + }, + "ListWorkgroupsRequestMaxResultsInteger":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "ListWorkgroupsResponse":{ + "type":"structure", + "required":["workgroups"], + "members":{ + "nextToken":{"shape":"String"}, + "workgroups":{"shape":"WorkgroupList"} + } + }, + "LogExport":{ + "type":"string", + "enum":[ + "useractivitylog", + "userlog", + "connectionlog" + ] + }, + "LogExportList":{ + "type":"list", + "member":{"shape":"LogExport"}, + "max":16, + "min":0 + }, + "Long":{ + "type":"long", + "box":true + }, + "Namespace":{ + "type":"structure", + "members":{ + "adminUsername":{"shape":"DbUser"}, + "creationDate":{"shape":"SyntheticTimestamp_date_time"}, + "dbName":{"shape":"String"}, + "defaultIamRoleArn":{"shape":"String"}, + "iamRoles":{"shape":"IamRoleArnList"}, + "kmsKeyId":{"shape":"String"}, + "logExports":{"shape":"LogExportList"}, + "namespaceArn":{"shape":"String"}, + "namespaceId":{"shape":"String"}, + "namespaceName":{"shape":"NamespaceName"}, + "status":{"shape":"NamespaceStatus"} + } + }, + "NamespaceList":{ + "type":"list", + "member":{"shape":"Namespace"} + }, + "NamespaceName":{ + "type":"string", + "max":64, + "min":3, + "pattern":"^[a-z0-9-]+$" + }, + "NamespaceStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "MODIFYING", + "DELETING" + ] + }, + "NetworkInterface":{ + "type":"structure", + "members":{ + "availabilityZone":{"shape":"String"}, + "networkInterfaceId":{"shape":"String"}, + "privateIpAddress":{"shape":"String"}, + "subnetId":{"shape":"String"} + } + }, + "NetworkInterfaceList":{ + "type":"list", + "member":{"shape":"NetworkInterface"} + }, + "PaginationToken":{ + "type":"string", + "max":1024, + "min":8 + }, + "ParameterKey":{"type":"string"}, + "ParameterValue":{"type":"string"}, + "PutResourcePolicyRequest":{ + "type":"structure", + "required":[ + "policy", + "resourceArn" + ], + "members":{ + "policy":{"shape":"String"}, + "resourceArn":{"shape":"String"} + } + }, + "PutResourcePolicyResponse":{ + "type":"structure", + "members":{ + "resourcePolicy":{"shape":"ResourcePolicy"} + } + }, + "RecoveryPoint":{ + "type":"structure", + "members":{ + "namespaceName":{"shape":"NamespaceName"}, + "recoveryPointCreateTime":{"shape":"SyntheticTimestamp_date_time"}, + "recoveryPointId":{"shape":"String"}, + "totalSizeInMegaBytes":{"shape":"Double"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "RecoveryPointList":{ + "type":"list", + "member":{"shape":"RecoveryPoint"} + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "resourceName":{"shape":"AmazonResourceName"} + }, + "exception":true + }, + "ResourcePolicy":{ + "type":"structure", + "members":{ + "policy":{"shape":"String"}, + "resourceArn":{"shape":"String"} + } + }, + "RestoreFromRecoveryPointRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "recoveryPointId", + "workgroupName" + ], + "members":{ + "namespaceName":{"shape":"NamespaceName"}, + "recoveryPointId":{"shape":"String"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "RestoreFromRecoveryPointResponse":{ + "type":"structure", + "members":{ + "namespace":{"shape":"Namespace"}, + "recoveryPointId":{"shape":"String"} + } + }, + "RestoreFromSnapshotRequest":{ + "type":"structure", + "required":[ + "namespaceName", + "workgroupName" + ], + "members":{ + "namespaceName":{"shape":"NamespaceName"}, + "ownerAccount":{"shape":"String"}, + "snapshotArn":{"shape":"String"}, + "snapshotName":{"shape":"String"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "RestoreFromSnapshotResponse":{ + "type":"structure", + "members":{ + "namespace":{"shape":"Namespace"}, + "ownerAccount":{"shape":"String"}, + "snapshotName":{"shape":"String"} + } + }, + "SecurityGroupId":{"type":"string"}, + "SecurityGroupIdList":{ + "type":"list", + "member":{"shape":"SecurityGroupId"} + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "Snapshot":{ + "type":"structure", + "members":{ + "accountsWithProvisionedRestoreAccess":{"shape":"AccountIdList"}, + "accountsWithRestoreAccess":{"shape":"AccountIdList"}, + "actualIncrementalBackupSizeInMegaBytes":{"shape":"Double"}, + "adminUsername":{"shape":"String"}, + "backupProgressInMegaBytes":{"shape":"Double"}, + "currentBackupRateInMegaBytesPerSecond":{"shape":"Double"}, + "elapsedTimeInSeconds":{"shape":"Long"}, + "estimatedSecondsToCompletion":{"shape":"Long"}, + "kmsKeyId":{"shape":"KmsKeyId"}, + "namespaceArn":{"shape":"String"}, + "namespaceName":{"shape":"String"}, + "ownerAccount":{"shape":"String"}, + "snapshotArn":{"shape":"String"}, + "snapshotCreateTime":{"shape":"SyntheticTimestamp_date_time"}, + "snapshotName":{"shape":"String"}, + "snapshotRemainingDays":{"shape":"Integer"}, + "snapshotRetentionPeriod":{"shape":"Integer"}, + "snapshotRetentionStartTime":{"shape":"SyntheticTimestamp_date_time"}, + "status":{"shape":"SnapshotStatus"}, + "totalBackupSizeInMegaBytes":{"shape":"Double"} + } + }, + "SnapshotList":{ + "type":"list", + "member":{"shape":"Snapshot"} + }, + "SnapshotStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "CREATING", + "DELETED", + "CANCELLED", + "FAILED", + "COPYING" + ] + }, + "String":{"type":"string"}, + "SubnetId":{"type":"string"}, + "SubnetIdList":{ + "type":"list", + "member":{"shape":"SubnetId"} + }, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "Tag":{ + "type":"structure", + "required":[ + "key", + "value" + ], + "members":{ + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + } + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":200, + "min":0 + }, + "TagList":{ + "type":"list", + "member":{"shape":"Tag"}, + "max":200, + "min":0 + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tags" + ], + "members":{ + "resourceArn":{"shape":"AmazonResourceName"}, + "tags":{"shape":"TagList"} + } + }, + "TagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "members":{ + "code":{"shape":"String"}, + "message":{"shape":"String"} + }, + "exception":true, + "retryable":{"throttling":false} + }, + "Timestamp":{"type":"timestamp"}, + "TooManyTagsException":{ + "type":"structure", + "members":{ + "message":{"shape":"String"}, + "resourceName":{"shape":"AmazonResourceName"} + }, + "exception":true + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "resourceArn", + "tagKeys" + ], + "members":{ + "resourceArn":{"shape":"AmazonResourceName"}, + "tagKeys":{"shape":"TagKeyList"} + } + }, + "UntagResourceResponse":{ + "type":"structure", + "members":{ + } + }, + "UpdateEndpointAccessRequest":{ + "type":"structure", + "required":["endpointName"], + "members":{ + "endpointName":{"shape":"String"}, + "vpcSecurityGroupIds":{"shape":"VpcSecurityGroupIdList"} + } + }, + "UpdateEndpointAccessResponse":{ + "type":"structure", + "members":{ + "endpoint":{"shape":"EndpointAccess"} + } + }, + "UpdateNamespaceRequest":{ + "type":"structure", + "required":["namespaceName"], + "members":{ + "adminUserPassword":{"shape":"DbPassword"}, + "adminUsername":{"shape":"DbUser"}, + "defaultIamRoleArn":{"shape":"String"}, + "iamRoles":{"shape":"IamRoleArnList"}, + "kmsKeyId":{"shape":"String"}, + "logExports":{"shape":"LogExportList"}, + "namespaceName":{"shape":"NamespaceName"} + } + }, + "UpdateNamespaceResponse":{ + "type":"structure", + "required":["namespace"], + "members":{ + "namespace":{"shape":"Namespace"} + } + }, + "UpdateSnapshotRequest":{ + "type":"structure", + "required":["snapshotName"], + "members":{ + "retentionPeriod":{"shape":"Integer"}, + "snapshotName":{"shape":"String"} + } + }, + "UpdateSnapshotResponse":{ + "type":"structure", + "members":{ + "snapshot":{"shape":"Snapshot"} + } + }, + "UpdateUsageLimitRequest":{ + "type":"structure", + "required":["usageLimitId"], + "members":{ + "amount":{"shape":"Long"}, + "breachAction":{"shape":"UsageLimitBreachAction"}, + "usageLimitId":{"shape":"String"} + } + }, + "UpdateUsageLimitResponse":{ + "type":"structure", + "members":{ + "usageLimit":{"shape":"UsageLimit"} + } + }, + "UpdateWorkgroupRequest":{ + "type":"structure", + "required":["workgroupName"], + "members":{ + "baseCapacity":{"shape":"Integer"}, + "configParameters":{"shape":"ConfigParameterList"}, + "enhancedVpcRouting":{"shape":"Boolean"}, + "publiclyAccessible":{"shape":"Boolean"}, + "securityGroupIds":{"shape":"SecurityGroupIdList"}, + "subnetIds":{"shape":"SubnetIdList"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "UpdateWorkgroupResponse":{ + "type":"structure", + "required":["workgroup"], + "members":{ + "workgroup":{"shape":"Workgroup"} + } + }, + "UsageLimit":{ + "type":"structure", + "members":{ + "amount":{"shape":"Long"}, + "breachAction":{"shape":"UsageLimitBreachAction"}, + "period":{"shape":"UsageLimitPeriod"}, + "resourceArn":{"shape":"String"}, + "usageLimitArn":{"shape":"String"}, + "usageLimitId":{"shape":"String"}, + "usageType":{"shape":"UsageLimitUsageType"} + } + }, + "UsageLimitBreachAction":{ + "type":"string", + "enum":[ + "log", + "emit-metric", + "deactivate" + ] + }, + "UsageLimitPeriod":{ + "type":"string", + "enum":[ + "daily", + "weekly", + "monthly" + ] + }, + "UsageLimitUsageType":{ + "type":"string", + "enum":[ + "serverless-compute", + "cross-region-datasharing" + ] + }, + "UsageLimits":{ + "type":"list", + "member":{"shape":"UsageLimit"}, + "max":100, + "min":1 + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "exception":true + }, + "VpcEndpoint":{ + "type":"structure", + "members":{ + "networkInterfaces":{"shape":"NetworkInterfaceList"}, + "vpcEndpointId":{"shape":"String"}, + "vpcId":{"shape":"String"} + } + }, + "VpcEndpointList":{ + "type":"list", + "member":{"shape":"VpcEndpoint"} + }, + "VpcSecurityGroupId":{"type":"string"}, + "VpcSecurityGroupIdList":{ + "type":"list", + "member":{"shape":"VpcSecurityGroupId"} + }, + "VpcSecurityGroupMembership":{ + "type":"structure", + "members":{ + "status":{"shape":"String"}, + "vpcSecurityGroupId":{"shape":"VpcSecurityGroupId"} + } + }, + "VpcSecurityGroupMembershipList":{ + "type":"list", + "member":{"shape":"VpcSecurityGroupMembership"} + }, + "Workgroup":{ + "type":"structure", + "members":{ + "baseCapacity":{"shape":"Integer"}, + "configParameters":{"shape":"ConfigParameterList"}, + "creationDate":{"shape":"SyntheticTimestamp_date_time"}, + "endpoint":{"shape":"Endpoint"}, + "enhancedVpcRouting":{"shape":"Boolean"}, + "namespaceName":{"shape":"String"}, + "publiclyAccessible":{"shape":"Boolean"}, + "securityGroupIds":{"shape":"SecurityGroupIdList"}, + "status":{"shape":"WorkgroupStatus"}, + "subnetIds":{"shape":"SubnetIdList"}, + "workgroupArn":{"shape":"String"}, + "workgroupId":{"shape":"String"}, + "workgroupName":{"shape":"WorkgroupName"} + } + }, + "WorkgroupList":{ + "type":"list", + "member":{"shape":"Workgroup"} + }, + "WorkgroupName":{ + "type":"string", + "max":64, + "min":3, + "pattern":"^[a-z0-9-]+$" + }, + "WorkgroupStatus":{ + "type":"string", + "enum":[ + "CREATING", + "AVAILABLE", + "MODIFYING", + "DELETING" + ] + } + } +} diff --git a/models/apis/redshiftserverless/2021-04-21/docs-2.json b/models/apis/redshiftserverless/2021-04-21/docs-2.json new file mode 100644 index 00000000000..358e8aab152 --- /dev/null +++ b/models/apis/redshiftserverless/2021-04-21/docs-2.json @@ -0,0 +1,1075 @@ +{ + "version": "2.0", + "service": "

This is prerelease documentation for Amazon Redshift Serverless, which is in preview release. The documentation and the feature are both subject to change. We recommend that you use this feature only in test environments, and not in production environments. For preview terms and conditions, see Beta Service Participation in Amazon Web Services Service Terms.

This is an interface reference for Amazon Redshift Serverless. It contains documentation for one of the programming or command line interfaces you can use to manage Amazon Redshift Serverless.

Amazon Redshift Serverless automatically provisions data warehouse capacity and intelligently scales the underlying resources based on workload demands. Amazon Redshift Serverless adjusts capacity in seconds to deliver consistently high performance and simplified operations for even the most demanding and volatile workloads. Amazon Redshift Serverless lets you focus on using your data to acquire new insights for your business and customers.

To learn more about Amazon Redshift Serverless, see What is Amazon Redshift Serverless.

", + "operations": { + "ConvertRecoveryPointToSnapshot": "

Converts a recovery point to a snapshot. For more information about recovery points and snapshots, see Working with snapshots and recovery points.

", + "CreateEndpointAccess": "

Creates an Amazon Redshift Serverless managed VPC endpoint.

", + "CreateNamespace": "

Creates a namespace in Amazon Redshift Serverless.

", + "CreateSnapshot": "

Creates a snapshot of all databases in a namespace. For more information about snapshots, see Working with snapshots and recovery points.

", + "CreateUsageLimit": "

Creates a usage limit for a specified Amazon Redshift Serverless usage type. The usage limit is identified by the returned usage limit identifier.

", + "CreateWorkgroup": "

Creates an workgroup in Amazon Redshift Serverless.

", + "DeleteEndpointAccess": "

Deletes an Amazon Redshift Serverless managed VPC endpoint.

", + "DeleteNamespace": "

Deletes a namespace from Amazon Redshift Serverless. Before you delete the namespace, you can create a final snapshot that has all of the data within the namespace.

", + "DeleteResourcePolicy": "

Deletes the specified resource policy.

", + "DeleteSnapshot": "

Deletes a snapshot from Amazon Redshift Serverless.

", + "DeleteUsageLimit": "

Deletes a usage limit from Amazon Redshift Serverless.

", + "DeleteWorkgroup": "

Deletes a workgroup.

", + "GetCredentials": "

Returns a database user name and temporary password with temporary authorization to log in to Amazon Redshift Serverless.

By default, the temporary credentials expire in 900 seconds. You can optionally specify a duration between 900 seconds (15 minutes) and 3600 seconds (60 minutes).

 <p> The Identity and Access Management (IAM) user or role that runs GetCredentials must have an IAM policy attached that allows access to all necessary actions and resources. </p> <p> If the <code>DbName</code> parameter is specified, the IAM policy must allow access to the resource dbname for the specified database name.</p> 
", + "GetEndpointAccess": "

Returns information, such as the name, about a VPC endpoint.

", + "GetNamespace": "

Returns information about a namespace in Amazon Redshift Serverless.

", + "GetRecoveryPoint": "

Returns information about a recovery point.

", + "GetResourcePolicy": "

Returns a resource policy.

", + "GetSnapshot": "

Returns information about a specific snapshot.

", + "GetUsageLimit": "

Returns information about a usage limit.

", + "GetWorkgroup": "

Returns information about a specific workgroup.

", + "ListEndpointAccess": "

Returns an array of EndpointAccess objects and relevant information.

", + "ListNamespaces": "

Returns information about a list of specified namespaces.

", + "ListRecoveryPoints": "

Returns an array of recovery points.

", + "ListSnapshots": "

Returns a list of snapshots.

", + "ListTagsForResource": "

Lists the tags assigned to a resource.

", + "ListUsageLimits": "

Lists all usage limits within Amazon Redshift Serverless.

", + "ListWorkgroups": "

Returns information about a list of specified workgroups.

", + "PutResourcePolicy": "

Creates or updates a resource policy. Currently, you can use policies to share snapshots across Amazon Web Services accounts.

", + "RestoreFromRecoveryPoint": "

Restore the data from a recovery point.

", + "RestoreFromSnapshot": "

Restores a namespace from a snapshot.

", + "TagResource": "

Assigns one or more tags to a resource.

", + "UntagResource": "

Removes a tag or set of tags from a resource.

", + "UpdateEndpointAccess": "

Updates an Amazon Redshift Serverless managed endpoint.

", + "UpdateNamespace": "

Updates a namespace with the specified settings.

", + "UpdateSnapshot": "

Updates a snapshot.

", + "UpdateUsageLimit": "

Update a usage limit in Amazon Redshift Serverless. You can't update the usage type or period of a usage limit.

", + "UpdateWorkgroup": "

Updates a workgroup with the specified configuration settings.

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

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AccountIdList": { + "base": null, + "refs": { + "Snapshot$accountsWithProvisionedRestoreAccess": "

All of the Amazon Web Services accounts that have access to restore a snapshot to a provisioned cluster.

", + "Snapshot$accountsWithRestoreAccess": "

All of the Amazon Web Services accounts that have access to restore a snapshot to a namespace.

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

The Amazon Resource Name (ARN) of the resource to list tags for.

", + "ResourceNotFoundException$resourceName": "

The name of the resource that could not be found.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to tag.

", + "TooManyTagsException$resourceName": "

The name of the resource that exceeded the number of tags allowed for a resource.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to remove tags from.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "CreateWorkgroupRequest$enhancedVpcRouting": "

The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC instead of over the internet.

", + "CreateWorkgroupRequest$publiclyAccessible": "

A value that specifies whether the workgroup can be accessed from a public network.

", + "UpdateWorkgroupRequest$enhancedVpcRouting": "

The value that specifies whether to turn on enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.

", + "UpdateWorkgroupRequest$publiclyAccessible": "

A value that specifies whether the workgroup can be accessible from a public network.

", + "Workgroup$enhancedVpcRouting": "

The value that specifies whether to enable enhanced virtual private cloud (VPC) routing, which forces Amazon Redshift Serverless to route traffic through your VPC.

", + "Workgroup$publiclyAccessible": "

A value that specifies whether the workgroup can be accessible from a public network

" + } + }, + "ConfigParameter": { + "base": "

An array of key-value pairs to set for advanced control over Amazon Redshift Serverless.

", + "refs": { + "ConfigParameterList$member": null + } + }, + "ConfigParameterList": { + "base": null, + "refs": { + "CreateWorkgroupRequest$configParameters": "

An array of parameters to set for more control over a serverless database. The options are datestyle, enable_user_activity_logging, query_group, search_path, and max_query_execution_time.

", + "UpdateWorkgroupRequest$configParameters": "

An array of parameters to set for advanced control over a database. The options are datestyle, enable_user_activity_logging, query_group, search_path, and max_query_execution_time.

", + "Workgroup$configParameters": "

An array of parameters to set for finer control over a database. The options are datestyle, enable_user_activity_logging, query_group, search_path, and max_query_execution_time.

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

The submitted action has conflicts.

", + "refs": { + } + }, + "ConvertRecoveryPointToSnapshotRequest": { + "base": null, + "refs": { + } + }, + "ConvertRecoveryPointToSnapshotResponse": { + "base": null, + "refs": { + } + }, + "CreateEndpointAccessRequest": { + "base": null, + "refs": { + } + }, + "CreateEndpointAccessResponse": { + "base": null, + "refs": { + } + }, + "CreateNamespaceRequest": { + "base": null, + "refs": { + } + }, + "CreateNamespaceResponse": { + "base": null, + "refs": { + } + }, + "CreateSnapshotRequest": { + "base": null, + "refs": { + } + }, + "CreateSnapshotResponse": { + "base": null, + "refs": { + } + }, + "CreateUsageLimitRequest": { + "base": null, + "refs": { + } + }, + "CreateUsageLimitResponse": { + "base": null, + "refs": { + } + }, + "CreateWorkgroupRequest": { + "base": null, + "refs": { + } + }, + "CreateWorkgroupResponse": { + "base": null, + "refs": { + } + }, + "DbName": { + "base": null, + "refs": { + "GetCredentialsRequest$dbName": "

The name of the database to get temporary authorization to log on to.

Constraints:

" + } + }, + "DbPassword": { + "base": null, + "refs": { + "CreateNamespaceRequest$adminUserPassword": "

The password of the administrator for the first database created in the namespace.

", + "GetCredentialsResponse$dbPassword": "

A temporary password that authorizes the user name returned by DbUser to log on to the database DbName.

", + "UpdateNamespaceRequest$adminUserPassword": "

The password of the administrator for the first database created in the namespace.

" + } + }, + "DbUser": { + "base": null, + "refs": { + "CreateNamespaceRequest$adminUsername": "

The username of the administrator for the first database created in the namespace.

", + "GetCredentialsResponse$dbUser": "

A database user name that is authorized to log on to the database DbName using the password DbPassword. If the specified DbUser exists in the database, the new user name has the same database privileges as the the user named in DbUser. By default, the user is added to PUBLIC.

", + "Namespace$adminUsername": "

The username of the administrator for the first database created in the namespace.

", + "UpdateNamespaceRequest$adminUsername": "

The username of the administrator for the first database created in the namespace.

" + } + }, + "DeleteEndpointAccessRequest": { + "base": null, + "refs": { + } + }, + "DeleteEndpointAccessResponse": { + "base": null, + "refs": { + } + }, + "DeleteNamespaceRequest": { + "base": null, + "refs": { + } + }, + "DeleteNamespaceResponse": { + "base": null, + "refs": { + } + }, + "DeleteResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteResourcePolicyResponse": { + "base": null, + "refs": { + } + }, + "DeleteSnapshotRequest": { + "base": null, + "refs": { + } + }, + "DeleteSnapshotResponse": { + "base": null, + "refs": { + } + }, + "DeleteUsageLimitRequest": { + "base": null, + "refs": { + } + }, + "DeleteUsageLimitResponse": { + "base": null, + "refs": { + } + }, + "DeleteWorkgroupRequest": { + "base": null, + "refs": { + } + }, + "DeleteWorkgroupResponse": { + "base": null, + "refs": { + } + }, + "Double": { + "base": null, + "refs": { + "RecoveryPoint$totalSizeInMegaBytes": "

The total size of the data in the recovery point in megabytes.

", + "Snapshot$actualIncrementalBackupSizeInMegaBytes": "

The size of the incremental backup in megabytes.

", + "Snapshot$backupProgressInMegaBytes": "

The size in megabytes of the data that has been backed up to a snapshot.

", + "Snapshot$currentBackupRateInMegaBytesPerSecond": "

The rate at which data is backed up into a snapshot in megabytes per second.

", + "Snapshot$totalBackupSizeInMegaBytes": "

The total size, in megabytes, of how big the snapshot is.

" + } + }, + "Endpoint": { + "base": "

The VPC endpoint object.

", + "refs": { + "Workgroup$endpoint": "

The endpoint that is created from the workgroup.

" + } + }, + "EndpointAccess": { + "base": "

Information about an Amazon Redshift Serverless VPC endpoint.

", + "refs": { + "CreateEndpointAccessResponse$endpoint": "

The created VPC endpoint.

", + "DeleteEndpointAccessResponse$endpoint": "

The deleted VPC endpoint.

", + "EndpointAccessList$member": null, + "GetEndpointAccessResponse$endpoint": "

The returned VPC endpoint.

", + "UpdateEndpointAccessResponse$endpoint": "

The updated VPC endpoint.

" + } + }, + "EndpointAccessList": { + "base": null, + "refs": { + "ListEndpointAccessResponse$endpoints": "

The returned VPC endpoints.

" + } + }, + "GetCredentialsRequest": { + "base": null, + "refs": { + } + }, + "GetCredentialsResponse": { + "base": null, + "refs": { + } + }, + "GetEndpointAccessRequest": { + "base": null, + "refs": { + } + }, + "GetEndpointAccessResponse": { + "base": null, + "refs": { + } + }, + "GetNamespaceRequest": { + "base": null, + "refs": { + } + }, + "GetNamespaceResponse": { + "base": null, + "refs": { + } + }, + "GetRecoveryPointRequest": { + "base": null, + "refs": { + } + }, + "GetRecoveryPointResponse": { + "base": null, + "refs": { + } + }, + "GetResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "GetResourcePolicyResponse": { + "base": null, + "refs": { + } + }, + "GetSnapshotRequest": { + "base": null, + "refs": { + } + }, + "GetSnapshotResponse": { + "base": null, + "refs": { + } + }, + "GetUsageLimitRequest": { + "base": null, + "refs": { + } + }, + "GetUsageLimitResponse": { + "base": null, + "refs": { + } + }, + "GetWorkgroupRequest": { + "base": null, + "refs": { + } + }, + "GetWorkgroupResponse": { + "base": null, + "refs": { + } + }, + "IamRoleArn": { + "base": null, + "refs": { + "IamRoleArnList$member": null + } + }, + "IamRoleArnList": { + "base": null, + "refs": { + "CreateNamespaceRequest$iamRoles": "

A list of IAM roles to associate with the namespace.

", + "Namespace$iamRoles": "

A list of IAM roles to associate with the namespace.

", + "UpdateNamespaceRequest$iamRoles": "

A list of IAM roles to associate with the namespace.

" + } + }, + "InsufficientCapacityException": { + "base": "

There is an insufficient capacity to perform the action.

", + "refs": { + } + }, + "Integer": { + "base": null, + "refs": { + "ConvertRecoveryPointToSnapshotRequest$retentionPeriod": "

How long to retain the snapshot.

", + "CreateSnapshotRequest$retentionPeriod": "

How long to retain the created snapshot.

", + "CreateWorkgroupRequest$baseCapacity": "

The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).

", + "DeleteNamespaceRequest$finalSnapshotRetentionPeriod": "

How long to retain the final snapshot.

", + "Endpoint$port": "

The port that Amazon Redshift Serverless listens on.

", + "EndpointAccess$port": "

The port number on which Amazon Redshift Serverless accepts incoming connections.

", + "GetCredentialsRequest$durationSeconds": "

The number of seconds until the returned temporary password expires. The minimum is 900 seconds, and the maximum is 3600 seconds.

", + "Snapshot$snapshotRemainingDays": "

The amount of days until the snapshot is deleted.

", + "Snapshot$snapshotRetentionPeriod": "

The period of time, in days, of how long the snapshot is retained.

", + "UpdateSnapshotRequest$retentionPeriod": "

The new retention period of the snapshot.

", + "UpdateWorkgroupRequest$baseCapacity": "

The new base data warehouse capacity in Redshift Processing Units (RPUs).

", + "Workgroup$baseCapacity": "

The base data warehouse capacity of the workgroup in Redshift Processing Units (RPUs).

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

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

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

The provided pagination token is invalid.

", + "refs": { + } + }, + "KmsKeyId": { + "base": null, + "refs": { + "Snapshot$kmsKeyId": "

The unique identifier of the KMS key used to encrypt the snapshot.

" + } + }, + "ListEndpointAccessRequest": { + "base": null, + "refs": { + } + }, + "ListEndpointAccessRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListEndpointAccessRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

" + } + }, + "ListEndpointAccessResponse": { + "base": null, + "refs": { + } + }, + "ListNamespacesRequest": { + "base": null, + "refs": { + } + }, + "ListNamespacesRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListNamespacesRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

" + } + }, + "ListNamespacesResponse": { + "base": null, + "refs": { + } + }, + "ListRecoveryPointsRequest": { + "base": null, + "refs": { + } + }, + "ListRecoveryPointsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListRecoveryPointsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

" + } + }, + "ListRecoveryPointsResponse": { + "base": null, + "refs": { + } + }, + "ListSnapshotsRequest": { + "base": null, + "refs": { + } + }, + "ListSnapshotsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListSnapshotsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

" + } + }, + "ListSnapshotsResponse": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": null, + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": null, + "refs": { + } + }, + "ListUsageLimitsRequest": { + "base": null, + "refs": { + } + }, + "ListUsageLimitsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListUsageLimitsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results. The default is 100.

" + } + }, + "ListUsageLimitsResponse": { + "base": null, + "refs": { + } + }, + "ListWorkgroupsRequest": { + "base": null, + "refs": { + } + }, + "ListWorkgroupsRequestMaxResultsInteger": { + "base": null, + "refs": { + "ListWorkgroupsRequest$maxResults": "

An optional parameter that specifies the maximum number of results to return. You can use nextToken to get the next page of results.

" + } + }, + "ListWorkgroupsResponse": { + "base": null, + "refs": { + } + }, + "LogExport": { + "base": null, + "refs": { + "LogExportList$member": null + } + }, + "LogExportList": { + "base": null, + "refs": { + "CreateNamespaceRequest$logExports": "

The types of logs the namespace can export. Available export types are userlog, connectionlog, and useractivitylog.

", + "Namespace$logExports": "

The types of logs the namespace can export. Available export types are User log, Connection log, and User activity log.

", + "UpdateNamespaceRequest$logExports": "

The types of logs the namespace can export. The export types are userlog, connectionlog, and useractivitylog.

" + } + }, + "Long": { + "base": null, + "refs": { + "CreateUsageLimitRequest$amount": "

The limit amount. If time-based, this amount is in Redshift Processing Units (RPU) consumed per hour. If data-based, this amount is in terabytes (TB) of data transferred between Regions in cross-account sharing. The value must be a positive number.

", + "Snapshot$elapsedTimeInSeconds": "

The amount of time it took to back up data into a snapshot.

", + "Snapshot$estimatedSecondsToCompletion": "

The estimated amount of seconds until the snapshot completes backup.

", + "UpdateUsageLimitRequest$amount": "

The new limit amount. For more information about this parameter.

", + "UsageLimit$amount": "

The limit amount. If time-based, this amount is in RPUs consumed per hour. If data-based, this amount is in terabytes (TB). The value must be a positive number.

" + } + }, + "Namespace": { + "base": "

A collection of database objects and users.

", + "refs": { + "CreateNamespaceResponse$namespace": "

The created namespace object.

", + "DeleteNamespaceResponse$namespace": "

The deleted namespace object.

", + "GetNamespaceResponse$namespace": "

The returned namespace object.

", + "NamespaceList$member": null, + "RestoreFromRecoveryPointResponse$namespace": "

The namespace that data was restored into.

", + "RestoreFromSnapshotResponse$namespace": null, + "UpdateNamespaceResponse$namespace": "

A list of tag instances.

" + } + }, + "NamespaceList": { + "base": null, + "refs": { + "ListNamespacesResponse$namespaces": "

The list of returned namespaces.

" + } + }, + "NamespaceName": { + "base": null, + "refs": { + "CreateNamespaceRequest$namespaceName": "

The name of the namespace.

", + "CreateWorkgroupRequest$namespaceName": "

The name of the namespace to associate with the workgroup.

", + "DeleteNamespaceRequest$namespaceName": "

The name of the namespace to delete.

", + "GetNamespaceRequest$namespaceName": "

The name of the namespace to retrieve information for.

", + "ListRecoveryPointsRequest$namespaceName": "

The name of the namespace to list recovery points for.

", + "Namespace$namespaceName": "

The name of the namespace. Must be between 3-64 alphanumeric characters in lowercase, and it cannot be a reserved word. A list of reserved words can be found in Reserved Words in the Amazon Redshift Database Developer Guide.

", + "RecoveryPoint$namespaceName": "

The name of the namespace the recovery point is associated with.

", + "RestoreFromRecoveryPointRequest$namespaceName": "

The name of the namespace to restore data into.

", + "RestoreFromSnapshotRequest$namespaceName": "

The name of the namespace to restore the snapshot to.

", + "UpdateNamespaceRequest$namespaceName": "

The name of the namespace.

" + } + }, + "NamespaceStatus": { + "base": null, + "refs": { + "Namespace$status": "

The status of the namespace.

" + } + }, + "NetworkInterface": { + "base": "

Contains information about a network interface in an Amazon Redshift Serverless managed VPC endpoint.

", + "refs": { + "NetworkInterfaceList$member": null + } + }, + "NetworkInterfaceList": { + "base": null, + "refs": { + "VpcEndpoint$networkInterfaces": "

One or more network interfaces of the endpoint. Also known as an interface endpoint.

" + } + }, + "PaginationToken": { + "base": null, + "refs": { + "ListUsageLimitsRequest$nextToken": "

If your initial ListUsageLimits operation returns a nextToken, you can include the returned nextToken in subsequent ListUsageLimits operations, which returns results in the next page.

", + "ListUsageLimitsResponse$nextToken": "

When nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

" + } + }, + "ParameterKey": { + "base": null, + "refs": { + "ConfigParameter$parameterKey": "

The key of the parameter. The options are datestyle, enable_user_activity_logging, query_group, search_path, and max_query_execution_time.

" + } + }, + "ParameterValue": { + "base": null, + "refs": { + "ConfigParameter$parameterValue": "

The value of the parameter to set.

" + } + }, + "PutResourcePolicyRequest": { + "base": null, + "refs": { + } + }, + "PutResourcePolicyResponse": { + "base": null, + "refs": { + } + }, + "RecoveryPoint": { + "base": "

The automatically created recovery point of a namespace. Recovery points are created every 30 minutes and kept for 24 hours.

", + "refs": { + "GetRecoveryPointResponse$recoveryPoint": "

The returned recovery point object.

", + "RecoveryPointList$member": null + } + }, + "RecoveryPointList": { + "base": null, + "refs": { + "ListRecoveryPointsResponse$recoveryPoints": "

The returned recovery point objects.

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

The resource could not be found.

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

The resource policy object. Currently, you can use policies to share snapshots across Amazon Web Services accounts.

", + "refs": { + "GetResourcePolicyResponse$resourcePolicy": "

The returned resource policy.

", + "PutResourcePolicyResponse$resourcePolicy": "

The policy that was created or updated.

" + } + }, + "RestoreFromRecoveryPointRequest": { + "base": null, + "refs": { + } + }, + "RestoreFromRecoveryPointResponse": { + "base": null, + "refs": { + } + }, + "RestoreFromSnapshotRequest": { + "base": null, + "refs": { + } + }, + "RestoreFromSnapshotResponse": { + "base": null, + "refs": { + } + }, + "SecurityGroupId": { + "base": null, + "refs": { + "SecurityGroupIdList$member": null + } + }, + "SecurityGroupIdList": { + "base": null, + "refs": { + "CreateWorkgroupRequest$securityGroupIds": "

An array of security group IDs to associate with the workgroup.

", + "UpdateWorkgroupRequest$securityGroupIds": "

An array of security group IDs to associate with the workgroup.

", + "Workgroup$securityGroupIds": "

An array of security group IDs to associate with the workgroup.

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

The service limit was exceeded.

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

A snapshot object that contains databases.

", + "refs": { + "ConvertRecoveryPointToSnapshotResponse$snapshot": "

The snapshot converted from the recovery point.

", + "CreateSnapshotResponse$snapshot": "

The created snapshot object.

", + "DeleteSnapshotResponse$snapshot": "

The deleted snapshot object.

", + "GetSnapshotResponse$snapshot": "

The returned snapshot object.

", + "SnapshotList$member": null, + "UpdateSnapshotResponse$snapshot": "

The updated snapshot object.

" + } + }, + "SnapshotList": { + "base": null, + "refs": { + "ListSnapshotsResponse$snapshots": "

All of the returned snapshot objects.

" + } + }, + "SnapshotStatus": { + "base": null, + "refs": { + "Snapshot$status": "

The status of the snapshot.

" + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$code": null, + "AccessDeniedException$message": null, + "AccountIdList$member": null, + "ConflictException$message": null, + "ConvertRecoveryPointToSnapshotRequest$recoveryPointId": "

The unique identifier of the recovery point.

", + "ConvertRecoveryPointToSnapshotRequest$snapshotName": "

The name of the snapshot.

", + "CreateEndpointAccessRequest$endpointName": "

The name of the VPC endpoint. An endpoint name must contain 1-30 characters. Valid characters are A-Z, a-z, 0-9, and hyphen(-). The first character must be a letter. The name can't contain two consecutive hyphens or end with a hyphen.

", + "CreateEndpointAccessRequest$workgroupName": "

The name of the workgroup to associate with the VPC endpoint.

", + "CreateNamespaceRequest$dbName": "

The name of the first database created in the namespace.

", + "CreateNamespaceRequest$defaultIamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.

", + "CreateNamespaceRequest$kmsKeyId": "

The ID of the Amazon Web Services Key Management Service key used to encrypt your data.

", + "CreateSnapshotRequest$namespaceName": "

The namespace to create a snapshot for.

", + "CreateSnapshotRequest$snapshotName": "

The name of the snapshot.

", + "CreateUsageLimitRequest$resourceArn": "

The Amazon Resource Name (ARN) of the Amazon Redshift Serverless resource to create the usage limit for.

", + "DeleteEndpointAccessRequest$endpointName": "

The name of the VPC endpoint to delete.

", + "DeleteNamespaceRequest$finalSnapshotName": "

The name of the snapshot to be created before the namespace is deleted.

", + "DeleteResourcePolicyRequest$resourceArn": "

The Amazon Resource Name (ARN) of the policy to delete.

", + "DeleteSnapshotRequest$snapshotName": "

The name of the snapshot to be deleted.

", + "DeleteUsageLimitRequest$usageLimitId": "

The unique identifier of the usage limit to delete.

", + "Endpoint$address": "

The DNS address of the VPC endpoint.

", + "EndpointAccess$address": "

The DNS address of the endpoint.

", + "EndpointAccess$endpointArn": "

The Amazon Resource Name (ARN) of the VPC endpoint.

", + "EndpointAccess$endpointName": "

The name of the VPC endpoint.

", + "EndpointAccess$endpointStatus": "

The status of the VPC endpoint.

", + "EndpointAccess$workgroupName": "

The name of the workgroup associated with the endpoint.

", + "GetEndpointAccessRequest$endpointName": "

The name of the VPC endpoint to return information for.

", + "GetRecoveryPointRequest$recoveryPointId": "

The unique identifier of the recovery point to return information for.

", + "GetResourcePolicyRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to return.

", + "GetSnapshotRequest$ownerAccount": "

The owner Amazon Web Services account of a snapshot shared with another user.

", + "GetSnapshotRequest$snapshotArn": "

The Amazon Resource Name (ARN) of the snapshot to return.

", + "GetSnapshotRequest$snapshotName": "

The name of the snapshot to return.

", + "GetUsageLimitRequest$usageLimitId": "

The unique identifier of the usage limit to return information for.

", + "InsufficientCapacityException$message": null, + "InternalServerException$message": null, + "InvalidPaginationException$message": null, + "ListEndpointAccessRequest$nextToken": "

If your initial ListEndpointAccess operation returns a nextToken, you can include the returned nextToken in subsequent ListEndpointAccess operations, which returns results in the next page.

", + "ListEndpointAccessRequest$vpcId": "

The unique identifier of the virtual private cloud with access to Amazon Redshift Serverless.

", + "ListEndpointAccessRequest$workgroupName": "

The name of the workgroup associated with the VPC endpoint to return.

", + "ListEndpointAccessResponse$nextToken": "

When nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

", + "ListNamespacesRequest$nextToken": "

If your initial ListNamespaces operation returns a nextToken, you can include the returned nextToken in subsequent ListNamespaces operations, which returns results in the next page.

", + "ListNamespacesResponse$nextToken": "

When nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

", + "ListRecoveryPointsRequest$nextToken": "

If your initial ListRecoveryPoints operation returns a nextToken, you can include the returned nextToken in subsequent ListRecoveryPoints operations, which returns results in the next page.

", + "ListRecoveryPointsResponse$nextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

", + "ListSnapshotsRequest$namespaceArn": "

The Amazon Resource Name (ARN) of the namespace from which to list all snapshots.

", + "ListSnapshotsRequest$namespaceName": "

The namespace from which to list all snapshots.

", + "ListSnapshotsRequest$nextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

", + "ListSnapshotsRequest$ownerAccount": "

The owner Amazon Web Services account of the snapshot.

", + "ListSnapshotsResponse$nextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page.

", + "ListUsageLimitsRequest$resourceArn": "

The Amazon Resource Name (ARN) associated with the resource whose usage limits you want to list.

", + "ListWorkgroupsRequest$nextToken": "

If your initial ListWorkgroups operation returns a nextToken, you can include the returned nextToken in subsequent ListNamespaces operations, which returns results in the next page.

", + "ListWorkgroupsResponse$nextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. To retrieve the next page, make the call again using the returned token.

", + "Namespace$dbName": "

The name of the first database created in the namespace.

", + "Namespace$defaultIamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.

", + "Namespace$kmsKeyId": "

The ID of the Amazon Web Services Key Management Service key used to encrypt your data.

", + "Namespace$namespaceArn": "

The Amazon Resource Name (ARN) associated with a namespace.

", + "Namespace$namespaceId": "

The unique identifier of a namespace.

", + "NetworkInterface$availabilityZone": "

The availability Zone.

", + "NetworkInterface$networkInterfaceId": "

The unique identifier of the network interface.

", + "NetworkInterface$privateIpAddress": "

The IPv4 address of the network interface within the subnet.

", + "NetworkInterface$subnetId": "

The unique identifier of the subnet.

", + "PutResourcePolicyRequest$policy": "

The policy to create or update. For example, the following policy grants a user authorization to restore a snapshot.

\"{\\\"Version\\\": \\\"2012-10-17\\\", \\\"Statement\\\" : [{ \\\"Sid\\\": \\\"AllowUserRestoreFromSnapshot\\\", \\\"Principal\\\":{\\\"AWS\\\": [\\\"739247239426\\\"]}, \\\"Action\\\": [\\\"redshift-serverless:RestoreFromSnapshot\\\"] , \\\"Effect\\\": \\\"Allow\\\" }]}\"

", + "PutResourcePolicyRequest$resourceArn": "

The Amazon Resource Name (ARN) of the account to create or update a resource policy for.

", + "RecoveryPoint$recoveryPointId": "

The unique identifier of the recovery point.

", + "ResourceNotFoundException$message": null, + "ResourcePolicy$policy": "

The resource policy.

", + "ResourcePolicy$resourceArn": "

The Amazon Resource Name (ARN) of the policy.

", + "RestoreFromRecoveryPointRequest$recoveryPointId": "

The unique identifier of the recovery point to restore from.

", + "RestoreFromRecoveryPointResponse$recoveryPointId": "

The unique identifier of the recovery point used for the restore.

", + "RestoreFromSnapshotRequest$ownerAccount": "

The Amazon Web Services account that owns the snapshot.

", + "RestoreFromSnapshotRequest$snapshotArn": "

The Amazon Resource Name (ARN) of the snapshot to restore from.

", + "RestoreFromSnapshotRequest$snapshotName": "

The name of the snapshot to restore from.

", + "RestoreFromSnapshotResponse$ownerAccount": "

The owner Amazon Web Services; account of the snapshot that was restored.

", + "RestoreFromSnapshotResponse$snapshotName": "

The name of the snapshot used to restore the namespace.

", + "ServiceQuotaExceededException$message": null, + "Snapshot$adminUsername": "

The username of the database within a snapshot.

", + "Snapshot$namespaceArn": "

The Amazon Resource Name (ARN) of the namespace the snapshot was created from.

", + "Snapshot$namespaceName": "

The name of the namepsace.

", + "Snapshot$ownerAccount": "

The owner Amazon Web Services; account of the snapshot.

", + "Snapshot$snapshotArn": "

The Amazon Resource Name (ARN) of the snapshot.

", + "Snapshot$snapshotName": "

The name of the snapshot.

", + "ThrottlingException$code": null, + "ThrottlingException$message": null, + "TooManyTagsException$message": null, + "UpdateEndpointAccessRequest$endpointName": "

The name of the VPC endpoint to update.

", + "UpdateNamespaceRequest$defaultIamRoleArn": "

The Amazon Resource Name (ARN) of the IAM role to set as a default in the namespace.

", + "UpdateNamespaceRequest$kmsKeyId": "

The ID of the Amazon Web Services Key Management Service key used to encrypt your data.

", + "UpdateSnapshotRequest$snapshotName": "

The name of the snapshot.

", + "UpdateUsageLimitRequest$usageLimitId": "

The identifier of the usage limit to update.

", + "UsageLimit$resourceArn": "

The Amazon Resource Name (ARN) that identifies the Amazon Redshift Serverless resource.

", + "UsageLimit$usageLimitArn": "

The Amazon Resource Name (ARN) of the resource associated with the usage limit.

", + "UsageLimit$usageLimitId": "

The identifier of the usage limit.

", + "ValidationException$message": null, + "VpcEndpoint$vpcEndpointId": "

The connection endpoint ID for connecting to Amazon Redshift Serverless.

", + "VpcEndpoint$vpcId": "

The VPC identifier that the endpoint is associated with.

", + "VpcSecurityGroupMembership$status": "

The status of the VPC security group.

", + "Workgroup$namespaceName": "

The namespace the workgroup is associated with.

", + "Workgroup$workgroupArn": "

The Amazon Resource Name (ARN) that links to the workgroup.

", + "Workgroup$workgroupId": "

The unique identifier of the workgroup.

" + } + }, + "SubnetId": { + "base": null, + "refs": { + "SubnetIdList$member": null + } + }, + "SubnetIdList": { + "base": null, + "refs": { + "CreateEndpointAccessRequest$subnetIds": "

The unique identifers of subnets from which Amazon Redshift Serverless chooses one to deploy a VPC endpoint.

", + "CreateWorkgroupRequest$subnetIds": "

An array of VPC subnet IDs to associate with the workgroup.

", + "EndpointAccess$subnetIds": "

The unique identifier of subnets where Amazon Redshift Serverless choose to deploy the VPC endpoint.

", + "UpdateWorkgroupRequest$subnetIds": "

An array of VPC subnet IDs to associate with the workgroup.

", + "Workgroup$subnetIds": "

An array of subnet IDs the workgroup is associated with.

" + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "EndpointAccess$endpointCreateTime": "

The time that the endpoint was created.

", + "Namespace$creationDate": "

The date of when the namespace was created.

", + "RecoveryPoint$recoveryPointCreateTime": "

The time the recovery point is created.

", + "Snapshot$snapshotCreateTime": "

The timestamp of when the snapshot was created.

", + "Snapshot$snapshotRetentionStartTime": "

The timestamp of when data within the snapshot started getting retained.

", + "Workgroup$creationDate": "

The creation date of the workgroup.

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

A map of key-value pairs.

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

The key to use in the tag.

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

The tag or set of tags to remove from the resource.

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

A list of tag instances.

", + "CreateWorkgroupRequest$tags": "

A array of tag instances.

", + "ListTagsForResourceResponse$tags": "

A map of the key-value pairs assigned to the resource.

", + "TagResourceRequest$tags": "

The map of the key-value pairs used to tag the resource.

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

The value of the tag.

" + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "Timestamp": { + "base": null, + "refs": { + "GetCredentialsResponse$expiration": "

The date and time the password in DbPassword expires.

", + "GetCredentialsResponse$nextRefreshTime": "

The date and time of when the DbUser and DbPassword authorization refreshes.

", + "ListRecoveryPointsRequest$endTime": "

The time when creation of the recovery point finished.

", + "ListRecoveryPointsRequest$startTime": "

The time when the recovery point's creation was initiated.

", + "ListSnapshotsRequest$endTime": "

The timestamp showing when the snapshot creation finished.

", + "ListSnapshotsRequest$startTime": "

The time when the creation of the snapshot was initiated.

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

The request exceeded the number of tags allowed for a resource.

", + "refs": { + } + }, + "UntagResourceRequest": { + "base": null, + "refs": { + } + }, + "UntagResourceResponse": { + "base": null, + "refs": { + } + }, + "UpdateEndpointAccessRequest": { + "base": null, + "refs": { + } + }, + "UpdateEndpointAccessResponse": { + "base": null, + "refs": { + } + }, + "UpdateNamespaceRequest": { + "base": null, + "refs": { + } + }, + "UpdateNamespaceResponse": { + "base": null, + "refs": { + } + }, + "UpdateSnapshotRequest": { + "base": null, + "refs": { + } + }, + "UpdateSnapshotResponse": { + "base": null, + "refs": { + } + }, + "UpdateUsageLimitRequest": { + "base": null, + "refs": { + } + }, + "UpdateUsageLimitResponse": { + "base": null, + "refs": { + } + }, + "UpdateWorkgroupRequest": { + "base": null, + "refs": { + } + }, + "UpdateWorkgroupResponse": { + "base": null, + "refs": { + } + }, + "UsageLimit": { + "base": "

The usage limit object.

", + "refs": { + "CreateUsageLimitResponse$usageLimit": "

The returned usage limit object.

", + "DeleteUsageLimitResponse$usageLimit": "

The deleted usage limit object.

", + "GetUsageLimitResponse$usageLimit": "

The returned usage limit object.

", + "UpdateUsageLimitResponse$usageLimit": "

The updated usage limit object.

", + "UsageLimits$member": null + } + }, + "UsageLimitBreachAction": { + "base": null, + "refs": { + "CreateUsageLimitRequest$breachAction": "

The action that Amazon Redshift Serverless takes when the limit is reached. The default is log.

", + "UpdateUsageLimitRequest$breachAction": "

The new action that Amazon Redshift Serverless takes when the limit is reached.

", + "UsageLimit$breachAction": "

The action that Amazon Redshift Serverless takes when the limit is reached.

" + } + }, + "UsageLimitPeriod": { + "base": null, + "refs": { + "CreateUsageLimitRequest$period": "

The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.

", + "UsageLimit$period": "

The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.

" + } + }, + "UsageLimitUsageType": { + "base": null, + "refs": { + "CreateUsageLimitRequest$usageType": "

The type of Amazon Redshift Serverless usage to create a usage limit for.

", + "ListUsageLimitsRequest$usageType": "

The Amazon Redshift Serverless feature whose limits you want to see.

", + "UsageLimit$usageType": "

The Amazon Redshift Serverless feature to limit.

" + } + }, + "UsageLimits": { + "base": null, + "refs": { + "ListUsageLimitsResponse$usageLimits": "

An array of returned usage limit objects.

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

The input failed to satisfy the constraints specified by an AWS service.

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

The connection endpoint for connecting to Amazon Redshift Serverless through the proxy.

", + "refs": { + "EndpointAccess$vpcEndpoint": "

The connection endpoint for connecting to Amazon Redshift Serverless.

", + "VpcEndpointList$member": null + } + }, + "VpcEndpointList": { + "base": null, + "refs": { + "Endpoint$vpcEndpoints": "

An array of VpcEndpoint objects.

" + } + }, + "VpcSecurityGroupId": { + "base": null, + "refs": { + "VpcSecurityGroupIdList$member": null, + "VpcSecurityGroupMembership$vpcSecurityGroupId": "

The unique identifier of the VPC security group.

" + } + }, + "VpcSecurityGroupIdList": { + "base": null, + "refs": { + "CreateEndpointAccessRequest$vpcSecurityGroupIds": "

The unique identifiers of the security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint.

", + "UpdateEndpointAccessRequest$vpcSecurityGroupIds": "

The list of VPC security groups associated with the endpoint after the endpoint is modified.

" + } + }, + "VpcSecurityGroupMembership": { + "base": "

Describes the members of a VPC security group.

", + "refs": { + "VpcSecurityGroupMembershipList$member": null + } + }, + "VpcSecurityGroupMembershipList": { + "base": null, + "refs": { + "EndpointAccess$vpcSecurityGroups": "

The security groups associated with the endpoint.

" + } + }, + "Workgroup": { + "base": "

The collection of computing resources from which an endpoint is created.

", + "refs": { + "CreateWorkgroupResponse$workgroup": "

The created workgroup object.

", + "DeleteWorkgroupResponse$workgroup": "

The deleted workgroup object.

", + "GetWorkgroupResponse$workgroup": "

The returned workgroup object.

", + "UpdateWorkgroupResponse$workgroup": "

The updated workgroup object.

", + "WorkgroupList$member": null + } + }, + "WorkgroupList": { + "base": null, + "refs": { + "ListWorkgroupsResponse$workgroups": "

The returned array of workgroups.

" + } + }, + "WorkgroupName": { + "base": null, + "refs": { + "CreateWorkgroupRequest$workgroupName": "

The name of the created workgroup.

", + "DeleteWorkgroupRequest$workgroupName": "

The name of the workgroup to be deleted.

", + "GetCredentialsRequest$workgroupName": "

The name of the workgroup associated with the database.

", + "GetWorkgroupRequest$workgroupName": "

The name of the workgroup to return information for.

", + "RecoveryPoint$workgroupName": "

The name of the workgroup the recovery point is associated with.

", + "RestoreFromRecoveryPointRequest$workgroupName": "

The name of the workgroup used to restore data.

", + "RestoreFromSnapshotRequest$workgroupName": "

The name of the workgroup used to restore the snapshot.

", + "UpdateWorkgroupRequest$workgroupName": "

The name of the workgroup to update.

", + "Workgroup$workgroupName": "

The name of the workgroup.

" + } + }, + "WorkgroupStatus": { + "base": null, + "refs": { + "Workgroup$status": "

The status of the workgroup.

" + } + } + } +} diff --git a/models/apis/redshiftserverless/2021-04-21/examples-1.json b/models/apis/redshiftserverless/2021-04-21/examples-1.json new file mode 100644 index 00000000000..0ea7e3b0bbe --- /dev/null +++ b/models/apis/redshiftserverless/2021-04-21/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/redshiftserverless/2021-04-21/paginators-1.json b/models/apis/redshiftserverless/2021-04-21/paginators-1.json new file mode 100644 index 00000000000..cf5163d4501 --- /dev/null +++ b/models/apis/redshiftserverless/2021-04-21/paginators-1.json @@ -0,0 +1,40 @@ +{ + "pagination": { + "ListEndpointAccess": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "endpoints" + }, + "ListNamespaces": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "namespaces" + }, + "ListRecoveryPoints": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "recoveryPoints" + }, + "ListSnapshots": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "snapshots" + }, + "ListUsageLimits": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "usageLimits" + }, + "ListWorkgroups": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "workgroups" + } + } +} diff --git a/models/apis/secretsmanager/2017-10-17/docs-2.json b/models/apis/secretsmanager/2017-10-17/docs-2.json index 59f6cf074ed..80d182c3da9 100644 --- a/models/apis/secretsmanager/2017-10-17/docs-2.json +++ b/models/apis/secretsmanager/2017-10-17/docs-2.json @@ -11,9 +11,9 @@ "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.

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.

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.

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.

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

", - "ListSecrets": "

Lists the secrets that are stored by Secrets Manager in the Amazon Web Services account, not including secrets that are marked for deletion. To see secrets marked for deletion, use the Secrets Manager console.

To list the versions of a secret, use ListSecretVersionIds.

To get the secret value from SecretString or SecretBinary, call GetSecretValue.

For information about finding secrets in the console, see Find secrets in Secrets Manager.

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

", + "ListSecrets": "

Lists the secrets that are stored by Secrets Manager in the Amazon Web Services account, not including secrets that are marked for deletion. To see secrets marked for deletion, use the Secrets Manager console.

ListSecrets is eventually consistent, however it might not reflect changes from the last five minutes. To get the latest information for a specific secret, use DescribeSecret.

To list the versions of a secret, use ListSecretVersionIds.

To get the secret value from SecretString or SecretBinary, call GetSecretValue.

For information about finding secrets in the console, see Find secrets in Secrets Manager.

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

", "PutResourcePolicy": "

Attaches a resource-based permission policy to a secret. A resource-based policy is optional. For more information, see Authentication and access control for Secrets Manager

For information about attaching a policy in the console, see Attach a permissions policy to a secret.

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

", - "PutSecretValue": "

Creates a new version with a new encrypted secret value and attaches it to the secret. The version can contain a new SecretString value or a new SecretBinary value.

We recommend you avoid calling PutSecretValue at a sustained rate of more than once every 10 minutes. When you update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you call PutSecretValue more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.

You can specify the staging labels to attach to the new version in VersionStages. If you don't include VersionStages, then Secrets Manager automatically moves the staging label AWSCURRENT to this version. If this operation creates the first version for the secret, then Secrets Manager automatically attaches the staging label AWSCURRENT to it .

If this operation moves the staging label AWSCURRENT from another version to this version, then Secrets Manager also automatically moves the staging label AWSPREVIOUS to the version that AWSCURRENT was removed from.

This operation is idempotent. If a version with a VersionId with the same value as the ClientRequestToken parameter already exists, and you specify the same secret data, the operation succeeds but does nothing. However, if the secret data is different, then the operation fails because you can't modify an existing version; you can only create new ones.

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

", + "PutSecretValue": "

Creates a new version with a new encrypted secret value and attaches it to the secret. The version can contain a new SecretString value or a new SecretBinary value.

We recommend you avoid calling PutSecretValue at a sustained rate of more than once every 10 minutes. When you update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you call PutSecretValue more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.

You can specify the staging labels to attach to the new version in VersionStages. If you don't include VersionStages, then Secrets Manager automatically moves the staging label AWSCURRENT to this version. If this operation creates the first version for the secret, then Secrets Manager automatically attaches the staging label AWSCURRENT to it .

If this operation moves the staging label AWSCURRENT from another version to this version, then Secrets Manager also automatically moves the staging label AWSPREVIOUS to the version that AWSCURRENT was removed from.

This operation is idempotent. If you call this operation with a ClientRequestToken that matches an existing version's VersionId, and you specify the same secret data, the operation succeeds but does nothing. However, if the secret data is different, then the operation fails because you can't modify an existing version; you can only create new ones.

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

", "RemoveRegionsFromReplication": "

For a secret that is replicated to other Regions, deletes the secret replicas from the Regions you specify.

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

", "ReplicateSecretToRegions": "

Replicates the secret to a new Regions. See Multi-Region secrets.

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

", "RestoreSecret": "

Cancels the scheduled deletion of a secret by removing the DeletedDate time stamp. You can access a secret again after it has been restored.

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

", @@ -21,7 +21,7 @@ "StopReplicationToReplica": "

Removes the link between the replica secret and the primary secret and promotes the replica to a primary secret in the replica Region.

You must call this operation from the Region in which you want to promote the replica to a primary secret.

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

", "TagResource": "

Attaches tags to a secret. Tags consist of a key name and a value. Tags are part of the secret's metadata. They are not associated with specific versions of the secret. This operation appends tags to the existing list of tags.

The following restrictions apply to tags:

If you use tags as part of your security strategy, then adding or removing a tag can change permissions. If successfully completing this operation would result in you losing your permissions for this secret, then the operation is blocked and returns an Access Denied error.

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

", "UntagResource": "

Removes specific tags from a secret.

This operation is idempotent. If a requested tag is not attached to the secret, no error is returned and the secret metadata is unchanged.

If you use tags as part of your security strategy, then removing a tag can change permissions. If successfully completing this operation would result in you losing your permissions for this secret, then the operation is blocked and returns an Access Denied error.

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

", - "UpdateSecret": "

Modifies the details of a secret, including metadata and the secret value. To change the secret value, you can also use PutSecretValue.

To change the rotation configuration of a secret, use RotateSecret instead.

We recommend you avoid calling UpdateSecret at a sustained rate of more than once every 10 minutes. When you call UpdateSecret to update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you update the secret value more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.

If you include SecretString or SecretBinary to create a new secret version, Secrets Manager automatically attaches the staging label AWSCURRENT to the new version.

If you call this operation with a VersionId that matches an existing version's ClientRequestToken, the operation results in an error. You can't modify an existing version, you can only create a new version. To remove a version, remove all staging labels from it. See UpdateSecretVersionStage.

If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key aws/secretsmanager. If this key doesn't already exist in your account, then Secrets Manager creates it for you automatically. All users and roles in the Amazon Web Services account automatically have access to use aws/secretsmanager. Creating aws/secretsmanager can result in a one-time significant delay in returning the result.

If the secret is in a different Amazon Web Services account from the credentials calling the API, then you can't use aws/secretsmanager to encrypt the secret, and you must create and use a customer managed key.

Required permissions: secretsmanager:UpdateSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager. If you use a customer managed key, you must also have kms:GenerateDataKey and kms:Decrypt permissions on the key. For more information, see Secret encryption and decryption.

", + "UpdateSecret": "

Modifies the details of a secret, including metadata and the secret value. To change the secret value, you can also use PutSecretValue.

To change the rotation configuration of a secret, use RotateSecret instead.

We recommend you avoid calling UpdateSecret at a sustained rate of more than once every 10 minutes. When you call UpdateSecret to update the secret value, Secrets Manager creates a new version of the secret. Secrets Manager removes outdated versions when there are more than 100, but it does not remove versions created less than 24 hours ago. If you update the secret value more than once every 10 minutes, you create more versions than Secrets Manager removes, and you will reach the quota for secret versions.

If you include SecretString or SecretBinary to create a new secret version, Secrets Manager automatically attaches the staging label AWSCURRENT to the new version.

If you call this operation with a ClientRequestToken that matches an existing version's VersionId, the operation results in an error. You can't modify an existing version, you can only create a new version. To remove a version, remove all staging labels from it. See UpdateSecretVersionStage.

If you don't specify an KMS encryption key, Secrets Manager uses the Amazon Web Services managed key aws/secretsmanager. If this key doesn't already exist in your account, then Secrets Manager creates it for you automatically. All users and roles in the Amazon Web Services account automatically have access to use aws/secretsmanager. Creating aws/secretsmanager can result in a one-time significant delay in returning the result.

If the secret is in a different Amazon Web Services account from the credentials calling the API, then you can't use aws/secretsmanager to encrypt the secret, and you must create and use a customer managed key.

Required permissions: secretsmanager:UpdateSecret. For more information, see IAM policy actions for Secrets Manager and Authentication and access control in Secrets Manager. If you use a customer managed key, you must also have kms:GenerateDataKey and kms:Decrypt permissions on the key. For more information, see Secret encryption and decryption.

", "UpdateSecretVersionStage": "

Modifies the staging labels attached to a version of a secret. Secrets Manager uses staging labels to track a version as it progresses through the secret rotation process. Each staging label can be attached to only one version at a time. To add a staging label to a version when it is already attached to another version, Secrets Manager first removes it from the other version first and then attaches it to this one. For more information about versions and staging labels, see Concepts: Version.

The staging labels that you specify in the VersionStage parameter are added to the existing list of staging labels for the version.

You can move the AWSCURRENT staging label to this version by including it in this call.

Whenever you move AWSCURRENT, Secrets Manager automatically moves the label AWSPREVIOUS to the version that AWSCURRENT was removed from.

If this action results in the last label being removed from a version, then the version is considered to be 'deprecated' and can be deleted by Secrets Manager.

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

", "ValidateResourcePolicy": "

Validates that a resource policy does not grant a wide range of principals access to your secret. A resource-based policy is optional for secrets.

The API performs three checks when validating the policy:

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

" }, diff --git a/models/apis/securityhub/2018-10-26/api-2.json b/models/apis/securityhub/2018-10-26/api-2.json index c4eb7b4bc43..3086459fd65 100644 --- a/models/apis/securityhub/2018-10-26/api-2.json +++ b/models/apis/securityhub/2018-10-26/api-2.json @@ -1424,6 +1424,44 @@ "Value":{"shape":"NonEmptyString"} } }, + "AwsCloudFormationStackDetails":{ + "type":"structure", + "members":{ + "Capabilities":{"shape":"NonEmptyStringList"}, + "CreationTime":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "DisableRollback":{"shape":"Boolean"}, + "DriftInformation":{"shape":"AwsCloudFormationStackDriftInformationDetails"}, + "EnableTerminationProtection":{"shape":"Boolean"}, + "LastUpdatedTime":{"shape":"NonEmptyString"}, + "NotificationArns":{"shape":"NonEmptyStringList"}, + "Outputs":{"shape":"AwsCloudFormationStackOutputsList"}, + "RoleArn":{"shape":"NonEmptyString"}, + "StackId":{"shape":"NonEmptyString"}, + "StackName":{"shape":"NonEmptyString"}, + "StackStatus":{"shape":"NonEmptyString"}, + "StackStatusReason":{"shape":"NonEmptyString"}, + "TimeoutInMinutes":{"shape":"Integer"} + } + }, + "AwsCloudFormationStackDriftInformationDetails":{ + "type":"structure", + "members":{ + "StackDriftStatus":{"shape":"NonEmptyString"} + } + }, + "AwsCloudFormationStackOutputsDetails":{ + "type":"structure", + "members":{ + "Description":{"shape":"NonEmptyString"}, + "OutputKey":{"shape":"NonEmptyString"}, + "OutputValue":{"shape":"NonEmptyString"} + } + }, + "AwsCloudFormationStackOutputsList":{ + "type":"list", + "member":{"shape":"AwsCloudFormationStackOutputsDetails"} + }, "AwsCloudFrontDistributionCacheBehavior":{ "type":"structure", "members":{ @@ -1472,6 +1510,17 @@ "Prefix":{"shape":"NonEmptyString"} } }, + "AwsCloudFrontDistributionOriginCustomOriginConfig":{ + "type":"structure", + "members":{ + "HttpPort":{"shape":"Integer"}, + "HttpsPort":{"shape":"Integer"}, + "OriginKeepaliveTimeout":{"shape":"Integer"}, + "OriginProtocolPolicy":{"shape":"NonEmptyString"}, + "OriginReadTimeout":{"shape":"Integer"}, + "OriginSslProtocols":{"shape":"AwsCloudFrontDistributionOriginSslProtocols"} + } + }, "AwsCloudFrontDistributionOriginGroup":{ "type":"structure", "members":{ @@ -1511,7 +1560,8 @@ "DomainName":{"shape":"NonEmptyString"}, "Id":{"shape":"NonEmptyString"}, "OriginPath":{"shape":"NonEmptyString"}, - "S3OriginConfig":{"shape":"AwsCloudFrontDistributionOriginS3OriginConfig"} + "S3OriginConfig":{"shape":"AwsCloudFrontDistributionOriginS3OriginConfig"}, + "CustomOriginConfig":{"shape":"AwsCloudFrontDistributionOriginCustomOriginConfig"} } }, "AwsCloudFrontDistributionOriginItemList":{ @@ -1524,6 +1574,13 @@ "OriginAccessIdentity":{"shape":"NonEmptyString"} } }, + "AwsCloudFrontDistributionOriginSslProtocols":{ + "type":"structure", + "members":{ + "Items":{"shape":"NonEmptyStringList"}, + "Quantity":{"shape":"Integer"} + } + }, "AwsCloudFrontDistributionOrigins":{ "type":"structure", "members":{ @@ -1562,6 +1619,44 @@ "TrailArn":{"shape":"NonEmptyString"} } }, + "AwsCloudWatchAlarmDetails":{ + "type":"structure", + "members":{ + "ActionsEnabled":{"shape":"Boolean"}, + "AlarmActions":{"shape":"NonEmptyStringList"}, + "AlarmArn":{"shape":"NonEmptyString"}, + "AlarmConfigurationUpdatedTimestamp":{"shape":"NonEmptyString"}, + "AlarmDescription":{"shape":"NonEmptyString"}, + "AlarmName":{"shape":"NonEmptyString"}, + "ComparisonOperator":{"shape":"NonEmptyString"}, + "DatapointsToAlarm":{"shape":"Integer"}, + "Dimensions":{"shape":"AwsCloudWatchAlarmDimensionsList"}, + "EvaluateLowSampleCountPercentile":{"shape":"NonEmptyString"}, + "EvaluationPeriods":{"shape":"Integer"}, + "ExtendedStatistic":{"shape":"NonEmptyString"}, + "InsufficientDataActions":{"shape":"NonEmptyStringList"}, + "MetricName":{"shape":"NonEmptyString"}, + "Namespace":{"shape":"NonEmptyString"}, + "OkActions":{"shape":"NonEmptyStringList"}, + "Period":{"shape":"Integer"}, + "Statistic":{"shape":"NonEmptyString"}, + "Threshold":{"shape":"Double"}, + "ThresholdMetricId":{"shape":"NonEmptyString"}, + "TreatMissingData":{"shape":"NonEmptyString"}, + "Unit":{"shape":"NonEmptyString"} + } + }, + "AwsCloudWatchAlarmDimensionsDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Value":{"shape":"NonEmptyString"} + } + }, + "AwsCloudWatchAlarmDimensionsList":{ + "type":"list", + "member":{"shape":"AwsCloudWatchAlarmDimensionsDetails"} + }, "AwsCodeBuildProjectArtifactsDetails":{ "type":"structure", "members":{ @@ -1860,7 +1955,19 @@ "VpcId":{"shape":"NonEmptyString"}, "SubnetId":{"shape":"NonEmptyString"}, "LaunchedAt":{"shape":"NonEmptyString"}, - "NetworkInterfaces":{"shape":"AwsEc2InstanceNetworkInterfacesList"} + "NetworkInterfaces":{"shape":"AwsEc2InstanceNetworkInterfacesList"}, + "VirtualizationType":{"shape":"NonEmptyString"}, + "MetadataOptions":{"shape":"AwsEc2InstanceMetadataOptions"} + } + }, + "AwsEc2InstanceMetadataOptions":{ + "type":"structure", + "members":{ + "HttpEndpoint":{"shape":"NonEmptyString"}, + "HttpProtocolIpv6":{"shape":"NonEmptyString"}, + "HttpPutResponseHopLimit":{"shape":"Integer"}, + "HttpTokens":{"shape":"NonEmptyString"}, + "InstanceMetadataTags":{"shape":"NonEmptyString"} } }, "AwsEc2InstanceNetworkInterfacesDetails":{ @@ -2060,6 +2167,23 @@ "Ipv6CidrBlockAssociationSet":{"shape":"Ipv6CidrBlockAssociationList"} } }, + "AwsEc2TransitGatewayDetails":{ + "type":"structure", + "members":{ + "Id":{"shape":"NonEmptyString"}, + "Description":{"shape":"NonEmptyString"}, + "DefaultRouteTablePropagation":{"shape":"NonEmptyString"}, + "AutoAcceptSharedAttachments":{"shape":"NonEmptyString"}, + "DefaultRouteTableAssociation":{"shape":"NonEmptyString"}, + "TransitGatewayCidrBlocks":{"shape":"NonEmptyStringList"}, + "AssociationDefaultRouteTableId":{"shape":"NonEmptyString"}, + "PropagationDefaultRouteTableId":{"shape":"NonEmptyString"}, + "VpnEcmpSupport":{"shape":"NonEmptyString"}, + "DnsSupport":{"shape":"NonEmptyString"}, + "MulticastSupport":{"shape":"NonEmptyString"}, + "AmazonSideAsn":{"shape":"Integer"} + } + }, "AwsEc2VolumeAttachment":{ "type":"structure", "members":{ @@ -2077,12 +2201,16 @@ "type":"structure", "members":{ "CreateTime":{"shape":"NonEmptyString"}, + "DeviceName":{"shape":"NonEmptyString"}, "Encrypted":{"shape":"Boolean"}, "Size":{"shape":"Integer"}, "SnapshotId":{"shape":"NonEmptyString"}, "Status":{"shape":"NonEmptyString"}, "KmsKeyId":{"shape":"NonEmptyString"}, - "Attachments":{"shape":"AwsEc2VolumeAttachmentList"} + "Attachments":{"shape":"AwsEc2VolumeAttachmentList"}, + "VolumeId":{"shape":"NonEmptyString"}, + "VolumeType":{"shape":"NonEmptyString"}, + "VolumeScanStatus":{"shape":"NonEmptyString"} } }, "AwsEc2VpcDetails":{ @@ -2120,6 +2248,35 @@ "type":"list", "member":{"shape":"AwsEc2VpcEndpointServiceServiceTypeDetails"} }, + "AwsEc2VpcPeeringConnectionDetails":{ + "type":"structure", + "members":{ + "AccepterVpcInfo":{"shape":"AwsEc2VpcPeeringConnectionVpcInfoDetails"}, + "ExpirationTime":{"shape":"NonEmptyString"}, + "RequesterVpcInfo":{"shape":"AwsEc2VpcPeeringConnectionVpcInfoDetails"}, + "Status":{"shape":"AwsEc2VpcPeeringConnectionStatusDetails"}, + "VpcPeeringConnectionId":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpcPeeringConnectionStatusDetails":{ + "type":"structure", + "members":{ + "Code":{"shape":"NonEmptyString"}, + "Message":{"shape":"NonEmptyString"} + } + }, + "AwsEc2VpcPeeringConnectionVpcInfoDetails":{ + "type":"structure", + "members":{ + "CidrBlock":{"shape":"NonEmptyString"}, + "CidrBlockSet":{"shape":"VpcInfoCidrBlockSetList"}, + "Ipv6CidrBlockSet":{"shape":"VpcInfoIpv6CidrBlockSetList"}, + "OwnerId":{"shape":"NonEmptyString"}, + "PeeringOptions":{"shape":"VpcInfoPeeringOptionsDetails"}, + "Region":{"shape":"NonEmptyString"}, + "VpcId":{"shape":"NonEmptyString"} + } + }, "AwsEc2VpnConnectionDetails":{ "type":"structure", "members":{ @@ -2279,12 +2436,31 @@ "AwsEcsClusterDetails":{ "type":"structure", "members":{ + "ClusterArn":{"shape":"NonEmptyString"}, + "ActiveServicesCount":{"shape":"Integer"}, "CapacityProviders":{"shape":"NonEmptyStringList"}, "ClusterSettings":{"shape":"AwsEcsClusterClusterSettingsList"}, "Configuration":{"shape":"AwsEcsClusterConfigurationDetails"}, - "DefaultCapacityProviderStrategy":{"shape":"AwsEcsClusterDefaultCapacityProviderStrategyList"} + "DefaultCapacityProviderStrategy":{"shape":"AwsEcsClusterDefaultCapacityProviderStrategyList"}, + "ClusterName":{"shape":"NonEmptyString"}, + "RegisteredContainerInstancesCount":{"shape":"Integer"}, + "RunningTasksCount":{"shape":"Integer"}, + "Status":{"shape":"NonEmptyString"} } }, + "AwsEcsContainerDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Image":{"shape":"NonEmptyString"}, + "MountPoints":{"shape":"AwsMountPointList"}, + "Privileged":{"shape":"Boolean"} + } + }, + "AwsEcsContainerDetailsList":{ + "type":"list", + "member":{"shape":"AwsEcsContainerDetails"} + }, "AwsEcsServiceCapacityProviderStrategyDetails":{ "type":"structure", "members":{ @@ -2770,6 +2946,71 @@ "type":"list", "member":{"shape":"AwsEcsTaskDefinitionVolumesDetails"} }, + "AwsEcsTaskDetails":{ + "type":"structure", + "members":{ + "ClusterArn":{"shape":"NonEmptyString"}, + "TaskDefinitionArn":{"shape":"NonEmptyString"}, + "Version":{"shape":"NonEmptyString"}, + "CreatedAt":{"shape":"NonEmptyString"}, + "StartedAt":{"shape":"NonEmptyString"}, + "StartedBy":{"shape":"NonEmptyString"}, + "Group":{"shape":"NonEmptyString"}, + "Volumes":{"shape":"AwsEcsTaskVolumeDetailsList"}, + "Containers":{"shape":"AwsEcsContainerDetailsList"} + } + }, + "AwsEcsTaskVolumeDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Host":{"shape":"AwsEcsTaskVolumeHostDetails"} + } + }, + "AwsEcsTaskVolumeDetailsList":{ + "type":"list", + "member":{"shape":"AwsEcsTaskVolumeDetails"} + }, + "AwsEcsTaskVolumeHostDetails":{ + "type":"structure", + "members":{ + "SourcePath":{"shape":"NonEmptyString"} + } + }, + "AwsEfsAccessPointDetails":{ + "type":"structure", + "members":{ + "AccessPointId":{"shape":"NonEmptyString"}, + "Arn":{"shape":"NonEmptyString"}, + "ClientToken":{"shape":"NonEmptyString"}, + "FileSystemId":{"shape":"NonEmptyString"}, + "PosixUser":{"shape":"AwsEfsAccessPointPosixUserDetails"}, + "RootDirectory":{"shape":"AwsEfsAccessPointRootDirectoryDetails"} + } + }, + "AwsEfsAccessPointPosixUserDetails":{ + "type":"structure", + "members":{ + "Gid":{"shape":"NonEmptyString"}, + "SecondaryGids":{"shape":"NonEmptyStringList"}, + "Uid":{"shape":"NonEmptyString"} + } + }, + "AwsEfsAccessPointRootDirectoryCreationInfoDetails":{ + "type":"structure", + "members":{ + "OwnerGid":{"shape":"NonEmptyString"}, + "OwnerUid":{"shape":"NonEmptyString"}, + "Permissions":{"shape":"NonEmptyString"} + } + }, + "AwsEfsAccessPointRootDirectoryDetails":{ + "type":"structure", + "members":{ + "CreationInfo":{"shape":"AwsEfsAccessPointRootDirectoryCreationInfoDetails"}, + "Path":{"shape":"NonEmptyString"} + } + }, "AwsEksClusterDetails":{ "type":"structure", "members":{ @@ -3340,6 +3581,23 @@ "type":"list", "member":{"shape":"AwsIamUserPolicy"} }, + "AwsKinesisStreamDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Arn":{"shape":"NonEmptyString"}, + "StreamEncryption":{"shape":"AwsKinesisStreamStreamEncryptionDetails"}, + "ShardCount":{"shape":"Integer"}, + "RetentionPeriodHours":{"shape":"Integer"} + } + }, + "AwsKinesisStreamStreamEncryptionDetails":{ + "type":"structure", + "members":{ + "EncryptionType":{"shape":"NonEmptyString"}, + "KeyId":{"shape":"NonEmptyString"} + } + }, "AwsKmsKeyDetails":{ "type":"structure", "members":{ @@ -3439,6 +3697,17 @@ } }, "AwsLambdaLayerVersionNumber":{"type":"long"}, + "AwsMountPoint":{ + "type":"structure", + "members":{ + "SourceVolume":{"shape":"NonEmptyString"}, + "ContainerPath":{"shape":"NonEmptyString"} + } + }, + "AwsMountPointList":{ + "type":"list", + "member":{"shape":"AwsMountPoint"} + }, "AwsNetworkFirewallFirewallDetails":{ "type":"structure", "members":{ @@ -3486,6 +3755,14 @@ "Type":{"shape":"NonEmptyString"} } }, + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails":{ + "type":"structure", + "members":{ + "Enabled":{"shape":"Boolean"}, + "InternalUserDatabaseEnabled":{"shape":"Boolean"}, + "MasterUserOptions":{"shape":"AwsOpenSearchServiceDomainMasterUserOptionsDetails"} + } + }, "AwsOpenSearchServiceDomainClusterConfigDetails":{ "type":"structure", "members":{ @@ -3523,7 +3800,8 @@ "DomainEndpointOptions":{"shape":"AwsOpenSearchServiceDomainDomainEndpointOptionsDetails"}, "VpcOptions":{"shape":"AwsOpenSearchServiceDomainVpcOptionsDetails"}, "LogPublishingOptions":{"shape":"AwsOpenSearchServiceDomainLogPublishingOptionsDetails"}, - "DomainEndpoints":{"shape":"FieldMap"} + "DomainEndpoints":{"shape":"FieldMap"}, + "AdvancedSecurityOptions":{"shape":"AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails"} } }, "AwsOpenSearchServiceDomainDomainEndpointOptionsDetails":{ @@ -3558,6 +3836,14 @@ "AuditLogs":{"shape":"AwsOpenSearchServiceDomainLogPublishingOption"} } }, + "AwsOpenSearchServiceDomainMasterUserOptionsDetails":{ + "type":"structure", + "members":{ + "MasterUserArn":{"shape":"NonEmptyString"}, + "MasterUserName":{"shape":"NonEmptyString"}, + "MasterUserPassword":{"shape":"NonEmptyString"} + } + }, "AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails":{ "type":"structure", "members":{ @@ -4508,6 +4794,7 @@ "Network":{"shape":"Network"}, "NetworkPath":{"shape":"NetworkPathList"}, "Process":{"shape":"ProcessDetails"}, + "Threats":{"shape":"ThreatList"}, "ThreatIntelIndicators":{"shape":"ThreatIntelIndicatorList"}, "Resources":{"shape":"ResourceList"}, "Compliance":{"shape":"Compliance"}, @@ -4665,7 +4952,14 @@ "KmsMasterKeyId":{"shape":"NonEmptyString"}, "Subscription":{"shape":"AwsSnsTopicSubscriptionList"}, "TopicName":{"shape":"NonEmptyString"}, - "Owner":{"shape":"NonEmptyString"} + "Owner":{"shape":"NonEmptyString"}, + "SqsSuccessFeedbackRoleArn":{"shape":"NonEmptyString"}, + "SqsFailureFeedbackRoleArn":{"shape":"NonEmptyString"}, + "ApplicationSuccessFeedbackRoleArn":{"shape":"NonEmptyString"}, + "FirehoseSuccessFeedbackRoleArn":{"shape":"NonEmptyString"}, + "FirehoseFailureFeedbackRoleArn":{"shape":"NonEmptyString"}, + "HttpSuccessFeedbackRoleArn":{"shape":"NonEmptyString"}, + "HttpFailureFeedbackRoleArn":{"shape":"NonEmptyString"} } }, "AwsSnsTopicSubscription":{ @@ -4769,6 +5063,140 @@ "type":"list", "member":{"shape":"AwsWafRegionalRateBasedRuleMatchPredicate"} }, + "AwsWafRegionalRuleDetails":{ + "type":"structure", + "members":{ + "MetricName":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "PredicateList":{"shape":"AwsWafRegionalRulePredicateList"}, + "RuleId":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalRuleGroupDetails":{ + "type":"structure", + "members":{ + "MetricName":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "RuleGroupId":{"shape":"NonEmptyString"}, + "Rules":{"shape":"AwsWafRegionalRuleGroupRulesList"} + } + }, + "AwsWafRegionalRuleGroupRulesActionDetails":{ + "type":"structure", + "members":{ + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalRuleGroupRulesDetails":{ + "type":"structure", + "members":{ + "Action":{"shape":"AwsWafRegionalRuleGroupRulesActionDetails"}, + "Priority":{"shape":"Integer"}, + "RuleId":{"shape":"NonEmptyString"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalRuleGroupRulesList":{ + "type":"list", + "member":{"shape":"AwsWafRegionalRuleGroupRulesDetails"} + }, + "AwsWafRegionalRulePredicateList":{ + "type":"list", + "member":{"shape":"AwsWafRegionalRulePredicateListDetails"} + }, + "AwsWafRegionalRulePredicateListDetails":{ + "type":"structure", + "members":{ + "DataId":{"shape":"NonEmptyString"}, + "Negated":{"shape":"Boolean"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalWebAclDetails":{ + "type":"structure", + "members":{ + "DefaultAction":{"shape":"NonEmptyString"}, + "MetricName":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "RulesList":{"shape":"AwsWafRegionalWebAclRulesList"}, + "WebAclId":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalWebAclRulesList":{ + "type":"list", + "member":{"shape":"AwsWafRegionalWebAclRulesListDetails"} + }, + "AwsWafRegionalWebAclRulesListActionDetails":{ + "type":"structure", + "members":{ + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalWebAclRulesListDetails":{ + "type":"structure", + "members":{ + "Action":{"shape":"AwsWafRegionalWebAclRulesListActionDetails"}, + "OverrideAction":{"shape":"AwsWafRegionalWebAclRulesListOverrideActionDetails"}, + "Priority":{"shape":"Integer"}, + "RuleId":{"shape":"NonEmptyString"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRegionalWebAclRulesListOverrideActionDetails":{ + "type":"structure", + "members":{ + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRuleDetails":{ + "type":"structure", + "members":{ + "MetricName":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "PredicateList":{"shape":"AwsWafRulePredicateList"}, + "RuleId":{"shape":"NonEmptyString"} + } + }, + "AwsWafRuleGroupDetails":{ + "type":"structure", + "members":{ + "MetricName":{"shape":"NonEmptyString"}, + "Name":{"shape":"NonEmptyString"}, + "RuleGroupId":{"shape":"NonEmptyString"}, + "Rules":{"shape":"AwsWafRuleGroupRulesList"} + } + }, + "AwsWafRuleGroupRulesActionDetails":{ + "type":"structure", + "members":{ + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRuleGroupRulesDetails":{ + "type":"structure", + "members":{ + "Action":{"shape":"AwsWafRuleGroupRulesActionDetails"}, + "Priority":{"shape":"Integer"}, + "RuleId":{"shape":"NonEmptyString"}, + "Type":{"shape":"NonEmptyString"} + } + }, + "AwsWafRuleGroupRulesList":{ + "type":"list", + "member":{"shape":"AwsWafRuleGroupRulesDetails"} + }, + "AwsWafRulePredicateList":{ + "type":"list", + "member":{"shape":"AwsWafRulePredicateListDetails"} + }, + "AwsWafRulePredicateListDetails":{ + "type":"structure", + "members":{ + "DataId":{"shape":"NonEmptyString"}, + "Negated":{"shape":"Boolean"}, + "Type":{"shape":"NonEmptyString"} + } + }, "AwsWafWebAclDetails":{ "type":"structure", "members":{ @@ -4980,10 +5408,13 @@ "ContainerDetails":{ "type":"structure", "members":{ + "ContainerRuntime":{"shape":"NonEmptyString"}, "Name":{"shape":"NonEmptyString"}, "ImageId":{"shape":"NonEmptyString"}, "ImageName":{"shape":"NonEmptyString"}, - "LaunchedAt":{"shape":"NonEmptyString"} + "LaunchedAt":{"shape":"NonEmptyString"}, + "VolumeMounts":{"shape":"VolumeMountList"}, + "Privileged":{"shape":"Boolean"} } }, "ControlStatus":{ @@ -5476,6 +5907,19 @@ "key":{"shape":"NonEmptyString"}, "value":{"shape":"NonEmptyString"} }, + "FilePathList":{ + "type":"list", + "member":{"shape":"FilePaths"} + }, + "FilePaths":{ + "type":"structure", + "members":{ + "FilePath":{"shape":"NonEmptyString"}, + "FileName":{"shape":"NonEmptyString"}, + "ResourceId":{"shape":"NonEmptyString"}, + "Hash":{"shape":"NonEmptyString"} + } + }, "FindingAggregator":{ "type":"structure", "members":{ @@ -6472,6 +6916,7 @@ "AwsRdsDbClusterSnapshot":{"shape":"AwsRdsDbClusterSnapshotDetails"}, "AwsRdsDbCluster":{"shape":"AwsRdsDbClusterDetails"}, "AwsEcsCluster":{"shape":"AwsEcsClusterDetails"}, + "AwsEcsContainer":{"shape":"AwsEcsContainerDetails"}, "AwsEcsTaskDefinition":{"shape":"AwsEcsTaskDefinitionDetails"}, "Container":{"shape":"ContainerDetails"}, "Other":{"shape":"FieldMap"}, @@ -6490,7 +6935,19 @@ "AwsNetworkFirewallFirewallPolicy":{"shape":"AwsNetworkFirewallFirewallPolicyDetails"}, "AwsNetworkFirewallFirewall":{"shape":"AwsNetworkFirewallFirewallDetails"}, "AwsNetworkFirewallRuleGroup":{"shape":"AwsNetworkFirewallRuleGroupDetails"}, - "AwsRdsDbSecurityGroup":{"shape":"AwsRdsDbSecurityGroupDetails"} + "AwsRdsDbSecurityGroup":{"shape":"AwsRdsDbSecurityGroupDetails"}, + "AwsKinesisStream":{"shape":"AwsKinesisStreamDetails"}, + "AwsEc2TransitGateway":{"shape":"AwsEc2TransitGatewayDetails"}, + "AwsEfsAccessPoint":{"shape":"AwsEfsAccessPointDetails"}, + "AwsCloudFormationStack":{"shape":"AwsCloudFormationStackDetails"}, + "AwsCloudWatchAlarm":{"shape":"AwsCloudWatchAlarmDetails"}, + "AwsEc2VpcPeeringConnection":{"shape":"AwsEc2VpcPeeringConnectionDetails"}, + "AwsWafRegionalRuleGroup":{"shape":"AwsWafRegionalRuleGroupDetails"}, + "AwsWafRegionalRule":{"shape":"AwsWafRegionalRuleDetails"}, + "AwsWafRegionalWebAcl":{"shape":"AwsWafRegionalWebAclDetails"}, + "AwsWafRule":{"shape":"AwsWafRuleDetails"}, + "AwsWafRuleGroup":{"shape":"AwsWafRuleGroupDetails"}, + "AwsEcsTask":{"shape":"AwsEcsTaskDetails"} } }, "ResourceList":{ @@ -7003,6 +7460,15 @@ "type":"string", "max":256 }, + "Threat":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "Severity":{"shape":"NonEmptyString"}, + "ItemCount":{"shape":"Integer"}, + "FilePaths":{"shape":"FilePathList"} + } + }, "ThreatIntelIndicator":{ "type":"structure", "members":{ @@ -7045,6 +7511,10 @@ "URL" ] }, + "ThreatList":{ + "type":"list", + "member":{"shape":"Threat"} + }, "Timestamp":{ "type":"timestamp", "timestampFormat":"iso8601" @@ -7200,6 +7670,45 @@ "BENIGN_POSITIVE" ] }, + "VolumeMount":{ + "type":"structure", + "members":{ + "Name":{"shape":"NonEmptyString"}, + "MountPath":{"shape":"NonEmptyString"} + } + }, + "VolumeMountList":{ + "type":"list", + "member":{"shape":"VolumeMount"} + }, + "VpcInfoCidrBlockSetDetails":{ + "type":"structure", + "members":{ + "CidrBlock":{"shape":"NonEmptyString"} + } + }, + "VpcInfoCidrBlockSetList":{ + "type":"list", + "member":{"shape":"VpcInfoCidrBlockSetDetails"} + }, + "VpcInfoIpv6CidrBlockSetDetails":{ + "type":"structure", + "members":{ + "Ipv6CidrBlock":{"shape":"NonEmptyString"} + } + }, + "VpcInfoIpv6CidrBlockSetList":{ + "type":"list", + "member":{"shape":"VpcInfoIpv6CidrBlockSetDetails"} + }, + "VpcInfoPeeringOptionsDetails":{ + "type":"structure", + "members":{ + "AllowDnsResolutionFromRemoteVpc":{"shape":"Boolean"}, + "AllowEgressFromLocalClassicLinkToRemoteVpc":{"shape":"Boolean"}, + "AllowEgressFromLocalVpcToRemoteClassicLink":{"shape":"Boolean"} + } + }, "Vulnerability":{ "type":"structure", "required":["Id"], diff --git a/models/apis/securityhub/2018-10-26/docs-2.json b/models/apis/securityhub/2018-10-26/docs-2.json index f5158c8d884..92a619a71b3 100644 --- a/models/apis/securityhub/2018-10-26/docs-2.json +++ b/models/apis/securityhub/2018-10-26/docs-2.json @@ -455,6 +455,30 @@ "AwsCertificateManagerCertificateDomainValidationOption$ResourceRecord": "

The CNAME record that is added to the DNS database for domain validation.

" } }, + "AwsCloudFormationStackDetails": { + "base": "

Nests a stack as a resource in a top-level template. Nested stacks are stacks created as resources for another stack.

", + "refs": { + "ResourceDetails$AwsCloudFormationStack": "

Details about an CloudFormation stack. A stack is a collection of Amazon Web Services resources that you can manage as a single unit.

" + } + }, + "AwsCloudFormationStackDriftInformationDetails": { + "base": "

Provides information about the stack's conformity to its expected template configuration.

", + "refs": { + "AwsCloudFormationStackDetails$DriftInformation": "

Information about whether a stack's actual configuration differs, or has drifted, from its expected configuration, as defined in the stack template and any values specified as template parameters.

" + } + }, + "AwsCloudFormationStackOutputsDetails": { + "base": "

Provides information about the CloudFormation stack output.

", + "refs": { + "AwsCloudFormationStackOutputsList$member": null + } + }, + "AwsCloudFormationStackOutputsList": { + "base": null, + "refs": { + "AwsCloudFormationStackDetails$Outputs": "

A list of output structures.

" + } + }, "AwsCloudFrontDistributionCacheBehavior": { "base": "

Information about a cache behavior for the distribution.

", "refs": { @@ -462,7 +486,7 @@ } }, "AwsCloudFrontDistributionCacheBehaviors": { - "base": "

Provides information about caching for the distribution.

", + "base": "

Provides information about caching for the CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionDetails$CacheBehaviors": "

Provides information about the cache configuration for the distribution.

" } @@ -474,25 +498,31 @@ } }, "AwsCloudFrontDistributionDefaultCacheBehavior": { - "base": "

Contains information about the default cache configuration for the distribution.

", + "base": "

Contains information about the default cache configuration for the CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionDetails$DefaultCacheBehavior": "

The default cache behavior for the configuration.

" } }, "AwsCloudFrontDistributionDetails": { - "base": "

A distribution configuration.

", + "base": "

A CloudFront distribution configuration.

", "refs": { "ResourceDetails$AwsCloudFrontDistribution": "

Details about a CloudFront distribution.

" } }, "AwsCloudFrontDistributionLogging": { - "base": "

A complex type that controls whether access logs are written for the distribution.

", + "base": "

A complex type that controls whether access logs are written for the CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionDetails$Logging": "

A complex type that controls whether access logs are written for the distribution.

" } }, + "AwsCloudFrontDistributionOriginCustomOriginConfig": { + "base": "

A custom origin. A custom origin is any origin that is not an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is configured with static website hosting is a custom origin.

", + "refs": { + "AwsCloudFrontDistributionOriginItem$CustomOriginConfig": "

An origin that is not an Amazon S3 bucket, with one exception. If the Amazon S3 bucket is configured with static website hosting, use this attribute. If the Amazon S3 bucket is not configured with static website hosting, use the S3OriginConfig type instead.

" + } + }, "AwsCloudFrontDistributionOriginGroup": { - "base": "

Information about an origin group for the distribution.

", + "base": "

Information about an origin group for the CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionOriginGroupsItemList$member": null } @@ -516,7 +546,7 @@ } }, "AwsCloudFrontDistributionOriginGroups": { - "base": "

Provides information about origin groups that are associated with the distribution.

", + "base": "

Provides information about origin groups that are associated with the CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionDetails$OriginGroups": "

Provides information about the origin groups in the distribution.

" } @@ -528,7 +558,7 @@ } }, "AwsCloudFrontDistributionOriginItem": { - "base": "

A complex type that describes the S3 bucket, HTTP server (for example, a web server), AWS Elemental MediaStore, or other server from which CloudFront gets your files.

", + "base": "

A complex type that describes the Amazon S3 bucket, HTTP server (for example, a web server), AWS Elemental MediaStore, or other server from which CloudFront gets your files.

", "refs": { "AwsCloudFrontDistributionOriginItemList$member": null } @@ -540,19 +570,25 @@ } }, "AwsCloudFrontDistributionOriginS3OriginConfig": { - "base": "

Information about an origin that is an S3 bucket that is not configured with static website hosting.

", + "base": "

Information about an origin that is an Amazon S3 bucket that is not configured with static website hosting.

", "refs": { "AwsCloudFrontDistributionOriginItem$S3OriginConfig": "

An origin that is an S3 bucket that is not configured with static website hosting.

" } }, + "AwsCloudFrontDistributionOriginSslProtocols": { + "base": "

A complex type that contains information about the SSL/TLS protocols that CloudFront can use when establishing an HTTPS connection with your origin.

", + "refs": { + "AwsCloudFrontDistributionOriginCustomOriginConfig$OriginSslProtocols": "

Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting to your origin over HTTPS.

" + } + }, "AwsCloudFrontDistributionOrigins": { - "base": "

A complex type that contains information about origins and origin groups for this distribution.

", + "base": "

A complex type that contains information about origins and origin groups for this CloudFront distribution.

", "refs": { "AwsCloudFrontDistributionDetails$Origins": "

A complex type that contains information about origins for this distribution.

" } }, "AwsCloudFrontDistributionViewerCertificate": { - "base": "

Provides information about the TLS/SSL configuration that the distribution uses to communicate with viewers.

", + "base": "

Provides information about the TLS/SSL configuration that the CloudFront distribution uses to communicate with viewers.

", "refs": { "AwsCloudFrontDistributionDetails$ViewerCertificate": "

Provides information about the TLS/SSL configuration that the distribution uses to communicate with viewers.

" } @@ -563,6 +599,24 @@ "ResourceDetails$AwsCloudTrailTrail": "

Provides details about a CloudTrail trail.

" } }, + "AwsCloudWatchAlarmDetails": { + "base": "

Specifies an alarm and associates it with the specified metric or metric math expression.

", + "refs": { + "ResourceDetails$AwsCloudWatchAlarm": "

Details about an Amazon CloudWatch alarm. An alarm allows you to monitor and receive alerts about your Amazon Web Services resources and applications across multiple Regions.

" + } + }, + "AwsCloudWatchAlarmDimensionsDetails": { + "base": "

Details about the dimensions for the metric associated with the alarm.

", + "refs": { + "AwsCloudWatchAlarmDimensionsList$member": null + } + }, + "AwsCloudWatchAlarmDimensionsList": { + "base": null, + "refs": { + "AwsCloudWatchAlarmDetails$Dimensions": "

The dimensions for the metric associated with the alarm.

" + } + }, "AwsCodeBuildProjectArtifactsDetails": { "base": "

Information about the build artifacts for the CodeBuild project.

", "refs": { @@ -774,13 +828,19 @@ } }, "AwsEc2InstanceDetails": { - "base": "

The details of an EC2 instance.

", + "base": "

The details of an Amazon EC2 instance.

", "refs": { "ResourceDetails$AwsEc2Instance": "

Details about an EC2 instance related to a finding.

" } }, + "AwsEc2InstanceMetadataOptions": { + "base": "

Metadata options that allow you to configure and secure the Amazon EC2 instance.

", + "refs": { + "AwsEc2InstanceDetails$MetadataOptions": "

Details about the metadata options for the Amazon EC2 instance.

" + } + }, "AwsEc2InstanceNetworkInterfacesDetails": { - "base": "

Identifies a network interface for the EC2 instance.

", + "base": "

Identifies a network interface for the Amazon EC2 instance.

", "refs": { "AwsEc2InstanceNetworkInterfacesList$member": null } @@ -804,7 +864,7 @@ } }, "AwsEc2NetworkAclDetails": { - "base": "

Contains details about an EC2 network access control list (ACL).

", + "base": "

Contains details about an Amazon EC2 network access control list (ACL).

", "refs": { "ResourceDetails$AwsEc2NetworkAcl": "

Details about an EC2 network access control list (ACL).

" } @@ -870,7 +930,7 @@ } }, "AwsEc2SecurityGroupDetails": { - "base": "

Details about an EC2 security group.

", + "base": "

Details about an Amazon EC2 security group.

", "refs": { "ResourceDetails$AwsEc2SecurityGroup": "

Details for an EC2 security group.

" } @@ -942,6 +1002,12 @@ "ResourceDetails$AwsEc2Subnet": "

Details about a subnet in Amazon EC2.

" } }, + "AwsEc2TransitGatewayDetails": { + "base": "

Information about an Amazon Web Services Amazon EC2 Transit Gateway that interconnects virtual private clouds (VPCs) and on-premises networks.

", + "refs": { + "ResourceDetails$AwsEc2TransitGateway": "

Details about an Amazon EC2 transit gateway that interconnects your virtual private clouds (VPC) and on-premises networks.

" + } + }, "AwsEc2VolumeAttachment": { "base": "

An attachment to an Amazon EC2 volume.

", "refs": { @@ -957,13 +1023,13 @@ "AwsEc2VolumeDetails": { "base": "

Details about an EC2 volume.

", "refs": { - "ResourceDetails$AwsEc2Volume": "

Details for an EC2 volume.

" + "ResourceDetails$AwsEc2Volume": "

Details for an Amazon EC2 volume.

" } }, "AwsEc2VpcDetails": { "base": "

Details about an EC2 VPC.

", "refs": { - "ResourceDetails$AwsEc2Vpc": "

Details for an EC2 VPC.

" + "ResourceDetails$AwsEc2Vpc": "

Details for an Amazon EC2 VPC.

" } }, "AwsEc2VpcEndpointServiceDetails": { @@ -984,10 +1050,29 @@ "AwsEc2VpcEndpointServiceDetails$ServiceType": "

The types for the service.

" } }, + "AwsEc2VpcPeeringConnectionDetails": { + "base": "

Provides information about a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which to create the connection.

", + "refs": { + "ResourceDetails$AwsEc2VpcPeeringConnection": "

Details about an Amazon EC2 VPC peering connection. A VPC peering connection is a networking connection between two VPCs that enables you to route traffic between them privately.

" + } + }, + "AwsEc2VpcPeeringConnectionStatusDetails": { + "base": "

Details about the status of the VPC peering connection.

", + "refs": { + "AwsEc2VpcPeeringConnectionDetails$Status": "

The status of the VPC peering connection.

" + } + }, + "AwsEc2VpcPeeringConnectionVpcInfoDetails": { + "base": "

Describes a VPC in a VPC peering connection.

", + "refs": { + "AwsEc2VpcPeeringConnectionDetails$AccepterVpcInfo": "

Information about the accepter VPC.

", + "AwsEc2VpcPeeringConnectionDetails$RequesterVpcInfo": "

Information about the requester VPC.

" + } + }, "AwsEc2VpnConnectionDetails": { "base": "

Details about an Amazon EC2 VPN connection.

", "refs": { - "ResourceDetails$AwsEc2VpnConnection": "

Details about an EC2 VPN connection.

" + "ResourceDetails$AwsEc2VpnConnection": "

Details about an Amazon EC2 VPN connection.

" } }, "AwsEc2VpnConnectionOptionsDetails": { @@ -1099,9 +1184,22 @@ } }, "AwsEcsClusterDetails": { - "base": "

provides details about an ECS cluster.

", + "base": "

Provides details about an Amazon ECS cluster.

", + "refs": { + "ResourceDetails$AwsEcsCluster": "

Details about an Amazon ECS cluster.

" + } + }, + "AwsEcsContainerDetails": { + "base": "

Provides information about an Amazon ECS container.

", + "refs": { + "AwsEcsContainerDetailsList$member": null, + "ResourceDetails$AwsEcsContainer": "

Provides information about a Docker container that's part of a task.

" + } + }, + "AwsEcsContainerDetailsList": { + "base": null, "refs": { - "ResourceDetails$AwsEcsCluster": "

Details about an ECS cluster.

" + "AwsEcsTaskDetails$Containers": "

The containers that are associated with the task.

" } }, "AwsEcsServiceCapacityProviderStrategyDetails": { @@ -1417,7 +1515,7 @@ } }, "AwsEcsTaskDefinitionDetails": { - "base": "

details about a task definition. A task definition describes the container and volume definitions of an Amazon Elastic Container Service task.

", + "base": "

Details about a task definition. A task definition describes the container and volume definitions of an Amazon Elastic Container Service task.

", "refs": { "ResourceDetails$AwsEcsTaskDefinition": "

Details about a task definition. A task definition describes the container and volume definitions of an Amazon Elastic Container Service task.

" } @@ -1500,6 +1598,54 @@ "AwsEcsTaskDefinitionDetails$Volumes": "

The data volume definitions for the task.

" } }, + "AwsEcsTaskDetails": { + "base": "

Provides details about a task in a cluster.

", + "refs": { + "ResourceDetails$AwsEcsTask": "

Details about a task in a cluster.

" + } + }, + "AwsEcsTaskVolumeDetails": { + "base": "

Provides information about a data volume that's used in a task definition.

", + "refs": { + "AwsEcsTaskVolumeDetailsList$member": null + } + }, + "AwsEcsTaskVolumeDetailsList": { + "base": null, + "refs": { + "AwsEcsTaskDetails$Volumes": "

Details about the data volume that is used in a task definition.

" + } + }, + "AwsEcsTaskVolumeHostDetails": { + "base": "

Provides details on a container instance bind mount host volume.

", + "refs": { + "AwsEcsTaskVolumeDetails$Host": "

This parameter is specified when you use bind mount host volumes. The contents of the host parameter determine whether your bind mount host volume persists on the host container instance and where it's stored.

" + } + }, + "AwsEfsAccessPointDetails": { + "base": "

Provides information about an Amazon EFS access point.

", + "refs": { + "ResourceDetails$AwsEfsAccessPoint": "

Details about an Amazon EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point.

" + } + }, + "AwsEfsAccessPointPosixUserDetails": { + "base": "

Provides details for all file system operations using this Amazon EFS access point.

", + "refs": { + "AwsEfsAccessPointDetails$PosixUser": "

The full POSIX identity, including the user ID, group ID, and secondary group IDs on the access point, that is used for all file operations by NFS clients using the access point.

" + } + }, + "AwsEfsAccessPointRootDirectoryCreationInfoDetails": { + "base": "

Provides information about the settings that Amazon EFS uses to create the root directory when a client connects to an access point.

", + "refs": { + "AwsEfsAccessPointRootDirectoryDetails$CreationInfo": "

Specifies the POSIX IDs and permissions to apply to the access point's root directory.

" + } + }, + "AwsEfsAccessPointRootDirectoryDetails": { + "base": "

Provides information about the directory on the Amazon EFS file system that the access point exposes as the root directory to NFS clients using the access point.

", + "refs": { + "AwsEfsAccessPointDetails$RootDirectory": "

The directory on the Amazon EFS file system that the access point exposes as the root directory to NFS clients using the access point.

" + } + }, "AwsEksClusterDetails": { "base": "

Provides details about an Amazon EKS cluster.

", "refs": { @@ -1932,6 +2078,18 @@ "AwsIamUserDetails$UserPolicyList": "

The list of inline policies that are embedded in the user.

" } }, + "AwsKinesisStreamDetails": { + "base": "

Provides information about an Amazon Kinesis data stream.

", + "refs": { + "ResourceDetails$AwsKinesisStream": "

Details about an Amazon Kinesis data stream.

" + } + }, + "AwsKinesisStreamStreamEncryptionDetails": { + "base": "

Provides information about stream encryption.

", + "refs": { + "AwsKinesisStreamDetails$StreamEncryption": "

When specified, enables or updates server-side encryption using an KMS key for a specified stream. Removing this property from your stack template and updating your stack disables encryption.

" + } + }, "AwsKmsKeyDetails": { "base": "

Contains metadata about an KMS key.

", "refs": { @@ -2004,6 +2162,18 @@ "AwsLambdaLayerVersionDetails$Version": "

The version number.

" } }, + "AwsMountPoint": { + "base": "

Details for a volume mount point that's used in a container definition.

", + "refs": { + "AwsMountPointList$member": null + } + }, + "AwsMountPointList": { + "base": null, + "refs": { + "AwsEcsContainerDetails$MountPoints": "

The mount points for data volumes in your container.

" + } + }, "AwsNetworkFirewallFirewallDetails": { "base": "

Details about an Network Firewall firewall.

", "refs": { @@ -2034,6 +2204,12 @@ "ResourceDetails$AwsNetworkFirewallRuleGroup": "

Details about an Network Firewall rule group.

" } }, + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails": { + "base": "

Provides information about domain access control options.

", + "refs": { + "AwsOpenSearchServiceDomainDetails$AdvancedSecurityOptions": "

Specifies options for fine-grained access control.

" + } + }, "AwsOpenSearchServiceDomainClusterConfigDetails": { "base": "

Details about the configuration of an OpenSearch cluster.

", "refs": { @@ -2078,6 +2254,12 @@ "AwsOpenSearchServiceDomainDetails$LogPublishingOptions": "

Configures the CloudWatch Logs to publish for the OpenSearch domain.

" } }, + "AwsOpenSearchServiceDomainMasterUserOptionsDetails": { + "base": "

Specifies information about the master user of the domain.

", + "refs": { + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails$MasterUserOptions": "

Specifies information about the master user of the domain.

" + } + }, "AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails": { "base": "

Provides details about the configuration for node-to-node encryption.

", "refs": { @@ -2740,7 +2922,7 @@ } }, "AwsSnsTopicDetails": { - "base": "

A wrapper type for the topic's ARN.

", + "base": "

Provides information about an Amazon SNS topic to which notifications can be published.

", "refs": { "ResourceDetails$AwsSnsTopic": "

Details about an SNS topic.

" } @@ -2754,7 +2936,7 @@ "AwsSnsTopicSubscriptionList": { "base": null, "refs": { - "AwsSnsTopicDetails$Subscription": "

Subscription is an embedded property that describes the subscription endpoints of an SNS topic.

" + "AwsSnsTopicDetails$Subscription": "

Subscription is an embedded property that describes the subscription endpoints of an Amazon SNS topic.

" } }, "AwsSqsQueueDetails": { @@ -2817,14 +2999,128 @@ "AwsWafRegionalRateBasedRuleDetails$MatchPredicates": "

The predicates to include in the rate-based rule.

" } }, + "AwsWafRegionalRuleDetails": { + "base": "

Provides information about an WAF Regional rule. This rule identifies the web requests that you want to allow, block, or count.

", + "refs": { + "ResourceDetails$AwsWafRegionalRule": "

Details about an WAF rule for Regional resources.

" + } + }, + "AwsWafRegionalRuleGroupDetails": { + "base": "

Provides information about an WAF Regional rule group. The rule group is a collection of rules for inspecting and controlling web requests.

", + "refs": { + "ResourceDetails$AwsWafRegionalRuleGroup": "

Details about an WAF rule group for Regional resources.

" + } + }, + "AwsWafRegionalRuleGroupRulesActionDetails": { + "base": "

Describes the action that AWS WAF should take on a web request when it matches the criteria defined in the rule.

", + "refs": { + "AwsWafRegionalRuleGroupRulesDetails$Action": "

The action that WAF should take on a web request when it matches the criteria defined in the rule.

" + } + }, + "AwsWafRegionalRuleGroupRulesDetails": { + "base": "

Provides information about the rules attached to a rule group

", + "refs": { + "AwsWafRegionalRuleGroupRulesList$member": null + } + }, + "AwsWafRegionalRuleGroupRulesList": { + "base": null, + "refs": { + "AwsWafRegionalRuleGroupDetails$Rules": "

Provides information about the rule statements used to identify the web requests that you want to allow, block, or count.

" + } + }, + "AwsWafRegionalRulePredicateList": { + "base": null, + "refs": { + "AwsWafRegionalRuleDetails$PredicateList": "

Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.

" + } + }, + "AwsWafRegionalRulePredicateListDetails": { + "base": "

Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.

", + "refs": { + "AwsWafRegionalRulePredicateList$member": null + } + }, + "AwsWafRegionalWebAclDetails": { + "base": "

Provides information about the web access control list (web ACL). The web ACL contains the rules that identify the requests that you want to allow, block, or count.

", + "refs": { + "ResourceDetails$AwsWafRegionalWebAcl": "

Details about an WAF web access control list (web ACL) for Regional resources.

" + } + }, + "AwsWafRegionalWebAclRulesList": { + "base": null, + "refs": { + "AwsWafRegionalWebAclDetails$RulesList": "

An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of the rule.

" + } + }, + "AwsWafRegionalWebAclRulesListActionDetails": { + "base": "

The action that WAF takes when a web request matches all conditions in the rule, such as allow, block, or count the request.

", + "refs": { + "AwsWafRegionalWebAclRulesListDetails$Action": "

The action that AWS WAF takes when a web request matches all conditions in the rule, such as allow, block, or count the request.

" + } + }, + "AwsWafRegionalWebAclRulesListDetails": { + "base": "

A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects that identify the web requests that you want to allow, block, or count.

", + "refs": { + "AwsWafRegionalWebAclRulesList$member": null + } + }, + "AwsWafRegionalWebAclRulesListOverrideActionDetails": { + "base": "

Provides details about the action to use in the place of the action that results from the rule group evaluation.

", + "refs": { + "AwsWafRegionalWebAclRulesListDetails$OverrideAction": "

Overrides the rule evaluation result in the rule group.

" + } + }, + "AwsWafRuleDetails": { + "base": "

Provides information about a WAF rule. This rule specifies the web requests that you want to allow, block, or count.

", + "refs": { + "ResourceDetails$AwsWafRule": "

Details about an WAF rule for global resources.

" + } + }, + "AwsWafRuleGroupDetails": { + "base": "

Provides information about an WAF rule group. A rule group is a collection of rules for inspecting and controlling web requests.

", + "refs": { + "ResourceDetails$AwsWafRuleGroup": "

Details about an WAF rule group for global resources.

" + } + }, + "AwsWafRuleGroupRulesActionDetails": { + "base": "

Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.

", + "refs": { + "AwsWafRuleGroupRulesDetails$Action": "

Provides information about what action WAF should take on a web request when it matches the criteria defined in the rule.

" + } + }, + "AwsWafRuleGroupRulesDetails": { + "base": "

Provides information about the rules attached to the rule group. These rules identify the web requests that you want to allow, block, or count.

", + "refs": { + "AwsWafRuleGroupRulesList$member": null + } + }, + "AwsWafRuleGroupRulesList": { + "base": null, + "refs": { + "AwsWafRuleGroupDetails$Rules": "

Provides information about the rules attached to the rule group. These rules identify the web requests that you want to allow, block, or count.

" + } + }, + "AwsWafRulePredicateList": { + "base": null, + "refs": { + "AwsWafRuleDetails$PredicateList": "

Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.

" + } + }, + "AwsWafRulePredicateListDetails": { + "base": "

Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.

", + "refs": { + "AwsWafRulePredicateList$member": null + } + }, "AwsWafWebAclDetails": { - "base": "

Details about an WAF WebACL.

", + "base": "

Provides information about an WAF web access control list (web ACL).

", "refs": { - "ResourceDetails$AwsWafWebAcl": "

Details for an WAF WebACL.

" + "ResourceDetails$AwsWafWebAcl": "

Details for an WAF web ACL.

" } }, "AwsWafWebAclRule": { - "base": "

Details for a rule in an WAF WebACL.

", + "base": "

Details for a rule in an WAF web ACL.

", "refs": { "AwsWafWebAclRuleList$member": null } @@ -2832,7 +3128,7 @@ "AwsWafWebAclRuleList": { "base": null, "refs": { - "AwsWafWebAclDetails$Rules": "

An array that contains the action for each rule in a WebACL, the priority of the rule, and the ID of the rule.

" + "AwsWafWebAclDetails$Rules": "

An array that contains the action for each rule in a web ACL, the priority of the rule, and the ID of the rule.

" } }, "AwsXrayEncryptionConfigDetails": { @@ -2921,6 +3217,8 @@ "AwsAutoScalingLaunchConfigurationDetails$AssociatePublicIpAddress": "

For Auto Scaling groups that run in a VPC, specifies whether to assign a public IP address to the group's instances.

", "AwsAutoScalingLaunchConfigurationDetails$EbsOptimized": "

Whether the launch configuration is optimized for Amazon EBS I/O.

", "AwsAutoScalingLaunchConfigurationInstanceMonitoringDetails$Enabled": "

If set to true, then instances in the group launch with detailed monitoring.

If set to false, then instances in the group launch with basic monitoring.

", + "AwsCloudFormationStackDetails$DisableRollback": "

Boolean to enable or disable rollback on stack creation failures.

", + "AwsCloudFormationStackDetails$EnableTerminationProtection": "

Whether termination protection is enabled for the stack.

", "AwsCloudFrontDistributionLogging$Enabled": "

With this field, you can enable or disable the selected distribution.

", "AwsCloudFrontDistributionLogging$IncludeCookies": "

Specifies whether you want CloudFront to include cookies in access logs.

", "AwsCloudFrontDistributionViewerCertificate$CloudFrontDefaultCertificate": "

Whether the distribution uses the CloudFront domain name. If set to false, then you provide either AcmCertificateArn or IamCertificateId.

", @@ -2929,6 +3227,7 @@ "AwsCloudTrailTrailDetails$IsMultiRegionTrail": "

Indicates whether the trail applies only to the current Region or to all Regions.

", "AwsCloudTrailTrailDetails$IsOrganizationTrail": "

Whether the trail is created for all accounts in an organization in Organizations, or only for the current Amazon Web Services account.

", "AwsCloudTrailTrailDetails$LogFileValidationEnabled": "

Indicates whether CloudTrail log file validation is enabled.

", + "AwsCloudWatchAlarmDetails$ActionsEnabled": "

Indicates whether actions should be executed during any changes to the alarm state.

", "AwsCodeBuildProjectArtifactsDetails$EncryptionDisabled": "

Indicates whether to disable encryption on the artifact. Only valid when Type is S3.

", "AwsCodeBuildProjectArtifactsDetails$OverrideArtifactName": "

Whether the name specified in the buildspec file overrides the artifact name.

", "AwsCodeBuildProjectEnvironment$PrivilegedMode": "

Whether to allow the Docker daemon to run inside a Docker container. Set to true if the build project is used to build Docker images.

", @@ -2946,13 +3245,14 @@ "AwsEc2SubnetDetails$DefaultForAz": "

Whether this subnet is the default subnet for the Availability Zone.

", "AwsEc2SubnetDetails$MapPublicIpOnLaunch": "

Whether instances in this subnet receive a public IP address.

", "AwsEc2VolumeAttachment$DeleteOnTermination": "

Whether the EBS volume is deleted when the EC2 instance is terminated.

", - "AwsEc2VolumeDetails$Encrypted": "

Whether the volume is encrypted.

", + "AwsEc2VolumeDetails$Encrypted": "

Specifies whether the volume is encrypted.

", "AwsEc2VpcEndpointServiceDetails$AcceptanceRequired": "

Whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be accepted.

", "AwsEc2VpcEndpointServiceDetails$ManagesVpcEndpoints": "

Whether the service manages its VPC endpoints.

", "AwsEc2VpnConnectionOptionsDetails$StaticRoutesOnly": "

Whether the VPN connection uses static routes only.

", "AwsEcrRepositoryImageScanningConfigurationDetails$ScanOnPush": "

Whether to scan images after they are pushed to a repository.

", "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$CloudWatchEncryptionEnabled": "

Whether to enable encryption on the CloudWatch logs.

", "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$S3EncryptionEnabled": "

Whether to encrypt the logs that are sent to the S3 bucket.

", + "AwsEcsContainerDetails$Privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", "AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails$Enable": "

Whether to enable the deployment circuit breaker logic for the service.

", "AwsEcsServiceDeploymentConfigurationDeploymentCircuitBreakerDetails$Rollback": "

Whether to roll back the service if a service deployment fails. If rollback is enabled, when a service deployment fails, the service is rolled back to the last deployment that completed successfully.

", "AwsEcsServiceDetails$EnableEcsManagedTags": "

Whether to enable Amazon ECS managed tags for the tasks in the service.

", @@ -2986,6 +3286,8 @@ "AwsNetworkFirewallFirewallDetails$DeleteProtection": "

Whether the firewall is protected from deletion. If set to true, then the firewall cannot be deleted.

", "AwsNetworkFirewallFirewallDetails$FirewallPolicyChangeProtection": "

Whether the firewall is protected from a change to the firewall policy. If set to true, you cannot associate a different policy with the firewall.

", "AwsNetworkFirewallFirewallDetails$SubnetChangeProtection": "

Whether the firewall is protected from a change to the subnet associations. If set to true, you cannot map different subnets to the firewall.

", + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails$Enabled": "

Enables fine-grained access control.

", + "AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails$InternalUserDatabaseEnabled": "

Enables the internal user database.

", "AwsOpenSearchServiceDomainClusterConfigDetails$WarmEnabled": "

Whether UltraWarm is enabled.

", "AwsOpenSearchServiceDomainClusterConfigDetails$DedicatedMasterEnabled": "

Whether to use a dedicated master node for the OpenSearch domain. A dedicated master node performs cluster management tasks, but does not hold data or respond to data upload requests.

", "AwsOpenSearchServiceDomainClusterConfigDetails$ZoneAwarenessEnabled": "

Whether to enable zone awareness for the OpenSearch domain. When zone awareness is enabled, OpenSearch Service allocates the cluster's nodes and replica index shards across Availability Zones (AZs) in the same Region. This prevents data loss and minimizes downtime if a node or data center fails.

", @@ -3040,8 +3342,11 @@ "AwsSecurityFinding$Sample": "

Indicates whether the finding is a sample finding.

", "AwsWafRateBasedRuleMatchPredicate$Negated": "

If set to true, then the rule actions are performed on requests that match the predicate settings.

If set to false, then the rule actions are performed on all requests except those that match the predicate settings.

", "AwsWafRegionalRateBasedRuleMatchPredicate$Negated": "

If set to true, then the rule actions are performed on requests that match the predicate settings.

If set to false, then the rule actions are performed on all requests except those that match the predicate settings.

", + "AwsWafRegionalRulePredicateListDetails$Negated": "

Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet.

", + "AwsWafRulePredicateListDetails$Negated": "

Specifies if you want WAF to allow, block, or count requests based on the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet.

", "BooleanFilter$Value": "

The value of the boolean.

", "ClassificationResult$AdditionalOccurrences": "

Indicates whether there are additional occurrences of sensitive data that are not included in the finding. This occurs when the number of occurrences exceeds the maximum that can be included.

", + "ContainerDetails$Privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", "DescribeHubResponse$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

If set to true, then new controls for enabled standards are enabled automatically. If set to false, then new controls are not enabled.

", "DescribeOrganizationConfigurationResponse$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

If set to true, then Security Hub is enabled for new accounts. If set to false, then new accounts are not added automatically.

", "DescribeOrganizationConfigurationResponse$MemberAccountLimitReached": "

Whether the maximum number of allowed member accounts are already associated with the Security Hub administrator account.

", @@ -3052,7 +3357,10 @@ "PortProbeAction$Blocked": "

Indicates whether the port probe was blocked.

", "Standard$EnabledByDefault": "

Whether the standard is enabled by default. When Security Hub is enabled from the console, if a standard is enabled by default, the check box for that standard is selected by default.

When Security Hub is enabled using the EnableSecurityHub API operation, the standard is enabled by default unless EnableDefaultStandards is set to false.

", "UpdateOrganizationConfigurationRequest$AutoEnable": "

Whether to automatically enable Security Hub for new accounts in the organization.

By default, this is false, and new accounts are not added automatically.

To automatically enable Security Hub for new accounts, set this to true.

", - "UpdateSecurityHubConfigurationRequest$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

By default, this is set to true, and new controls are enabled automatically. To not automatically enable new controls, set this to false.

" + "UpdateSecurityHubConfigurationRequest$AutoEnableControls": "

Whether to automatically enable new controls when they are added to standards that are enabled.

By default, this is set to true, and new controls are enabled automatically. To not automatically enable new controls, set this to false.

", + "VpcInfoPeeringOptionsDetails$AllowDnsResolutionFromRemoteVpc": "

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

", + "VpcInfoPeeringOptionsDetails$AllowEgressFromLocalClassicLinkToRemoteVpc": "

Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.

", + "VpcInfoPeeringOptionsDetails$AllowEgressFromLocalVpcToRemoteClassicLink": "

Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.

" } }, "BooleanFilter": { @@ -3455,6 +3763,7 @@ "AwsApiGatewayCanarySettings$PercentTraffic": "

The percentage of traffic that is diverted to a canary deployment.

", "AwsApiGatewayMethodSettings$ThrottlingRateLimit": "

The throttling rate limit for the method.

", "AwsApiGatewayV2RouteSettings$ThrottlingRateLimit": "

The throttling rate limit.

", + "AwsCloudWatchAlarmDetails$Threshold": "

The value to compare with the specified statistic.

", "AwsKmsKeyDetails$CreationDate": "

Indicates when the KMS key was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AwsRedshiftClusterRestoreStatus$CurrentRestoreRateInMegaBytesPerSecond": "

The number of megabytes per second being transferred from the backup storage. Returns the average rate for a completed backup.

This field is only updated when you restore to DC2 and DS2 node types.

", "Cvss$BaseScore": "

The base CVSS score.

", @@ -3519,6 +3828,18 @@ "ResourceDetails$Other": "

Details about a resource that are not available in a type-specific details object. Use the Other object in the following cases.

" } }, + "FilePathList": { + "base": null, + "refs": { + "Threat$FilePaths": "

Provides information about the file paths that were affected by the threat.

" + } + }, + "FilePaths": { + "base": "

Provides information about the file paths that were affected by the threat.

", + "refs": { + "FilePathList$member": null + } + }, "FindingAggregator": { "base": "

A finding aggregator. A finding aggregator contains the configuration for finding aggregation.

", "refs": { @@ -3745,8 +4066,17 @@ "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails$Iops": "

The number of input/output (I/O) operations per second (IOPS) to provision for the volume.

Only supported for gp3 or io1 volumes. Required for io1 volumes. Not used with standard, gp2, st1, or sc1 volumes.

", "AwsAutoScalingLaunchConfigurationBlockDeviceMappingsEbsDetails$VolumeSize": "

The volume size, in GiBs. The following are the supported volumes sizes for each volume type:

You must specify either SnapshotId or VolumeSize. If you specify both SnapshotId and VolumeSize, the volume size must be equal or greater than the size of the snapshot.

", "AwsAutoScalingLaunchConfigurationMetadataOptions$HttpPutResponseHopLimit": "

The HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

", + "AwsCloudFormationStackDetails$TimeoutInMinutes": "

The length of time, in minutes, that CloudFormation waits for the nested stack to reach the CREATE_COMPLETE state.

", + "AwsCloudFrontDistributionOriginCustomOriginConfig$HttpPort": "

The HTTP port that CloudFront uses to connect to the origin.

", + "AwsCloudFrontDistributionOriginCustomOriginConfig$HttpsPort": "

The HTTPS port that CloudFront uses to connect to the origin.

", + "AwsCloudFrontDistributionOriginCustomOriginConfig$OriginKeepaliveTimeout": "

Specifies how long, in seconds, CloudFront persists its connection to the origin.

", + "AwsCloudFrontDistributionOriginCustomOriginConfig$OriginReadTimeout": "

Specifies how long, in seconds, CloudFront waits for a response from the origin.

", "AwsCloudFrontDistributionOriginGroupFailoverStatusCodes$Quantity": "

The number of status codes that can cause a failover.

", "AwsCloudFrontDistributionOriginGroupFailoverStatusCodesItemList$member": null, + "AwsCloudFrontDistributionOriginSslProtocols$Quantity": "

The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS connection with this origin.

", + "AwsCloudWatchAlarmDetails$DatapointsToAlarm": "

The number of datapoints that must be breaching to trigger the alarm.

", + "AwsCloudWatchAlarmDetails$EvaluationPeriods": "

The number of periods over which data is compared to the specified threshold.

", + "AwsCloudWatchAlarmDetails$Period": "

The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric.

", "AwsCodeBuildProjectSource$GitCloneDepth": "

Information about the Git clone depth for the build project.

", "AwsCorsConfiguration$MaxAge": "

The number of seconds for which the browser caches preflight request results.

", "AwsDynamoDbTableDetails$ItemCount": "

The number of items in the table.

", @@ -3755,11 +4085,13 @@ "AwsDynamoDbTableProvisionedThroughput$ReadCapacityUnits": "

The maximum number of strongly consistent reads consumed per second before DynamoDB returns a ThrottlingException.

", "AwsDynamoDbTableProvisionedThroughput$WriteCapacityUnits": "

The maximum number of writes consumed per second before DynamoDB returns a ThrottlingException.

", "AwsDynamoDbTableProvisionedThroughputOverride$ReadCapacityUnits": "

The read capacity units for the replica.

", + "AwsEc2InstanceMetadataOptions$HttpPutResponseHopLimit": "

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

", "AwsEc2NetworkAclEntry$RuleNumber": "

The rule number. The rules are processed in order by their number.

", "AwsEc2NetworkInterfaceAttachment$DeviceIndex": "

The device index of the network interface attachment on the instance.

", "AwsEc2SecurityGroupIpPermission$FromPort": "

The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.

A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.

", - "AwsEc2SecurityGroupIpPermission$ToPort": "

The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.

", + "AwsEc2SecurityGroupIpPermission$ToPort": "

The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.

A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.

", "AwsEc2SubnetDetails$AvailableIpAddressCount": "

The number of available IPV4 addresses in the subnet. Does not include addresses for stopped instances.

", + "AwsEc2TransitGatewayDetails$AmazonSideAsn": "

A private Autonomous System Number (ASN) for the Amazon side of a BGP session.

", "AwsEc2VolumeDetails$Size": "

The size of the volume, in GiBs.

", "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$DpdTimeoutSeconds": "

The number of seconds after which a Dead Peer Detection (DPD) timeout occurs.

", "AwsEc2VpnConnectionOptionsTunnelOptionsDetails$Phase1LifetimeSeconds": "

The lifetime for phase 1 of the IKE negotiation, in seconds.

", @@ -3770,6 +4102,9 @@ "AwsEc2VpnConnectionVgwTelemetryDetails$AcceptedRouteCount": "

The number of accepted routes.

", "AwsEcsClusterDefaultCapacityProviderStrategyDetails$Base": "

The minimum number of tasks to run on the specified capacity provider.

", "AwsEcsClusterDefaultCapacityProviderStrategyDetails$Weight": "

The relative percentage of the total number of tasks launched that should use the capacity provider.

", + "AwsEcsClusterDetails$ActiveServicesCount": "

The number of services that are running on the cluster in an ACTIVE state. You can view these services with the Amazon ECS ListServices API operation.

", + "AwsEcsClusterDetails$RegisteredContainerInstancesCount": "

The number of container instances registered into the cluster. This includes container instances in both ACTIVE and DRAINING status.

", + "AwsEcsClusterDetails$RunningTasksCount": "

The number of tasks in the cluster that are in the RUNNING state.

", "AwsEcsServiceCapacityProviderStrategyDetails$Base": "

The minimum number of tasks to run on the capacity provider. Only one strategy item can specify a value for Base.

The value must be between 0 and 100000.

", "AwsEcsServiceCapacityProviderStrategyDetails$Weight": "

The relative percentage of the total number of tasks that should use the capacity provider.

If no weight is specified, the default value is 0. At least one capacity provider must have a weight greater than 0.

The value can be between 0 and 1000.

", "AwsEcsServiceDeploymentConfigurationDetails$MaximumPercent": "

For a service that uses the rolling update (ECS) deployment type, the maximum number of tasks in a service that are allowed in the RUNNING or PENDING state during a deployment, and for tasks that use the EC2 launch type, when any container instances are in the DRAINING state. Provided as a percentage of the desired number of tasks. The default value is 200%.

For a service that uses the blue/green (CODE_DEPLOY) or EXTERNAL deployment types, and tasks that use the EC2 launch type, the maximum number of tasks in the service that remain in the RUNNING state while the container instances are in the DRAINING state.

For the Fargate launch type, the maximum percent value is not used.

", @@ -3813,6 +4148,8 @@ "AwsIamPolicyDetails$AttachmentCount": "

The number of users, groups, and roles that the policy is attached to.

", "AwsIamPolicyDetails$PermissionsBoundaryUsageCount": "

The number of users and roles that use the policy to set the permissions boundary.

", "AwsIamRoleDetails$MaxSessionDuration": "

The maximum session duration (in seconds) that you want to set for the specified role.

", + "AwsKinesisStreamDetails$ShardCount": "

The number of shards that the stream uses.

", + "AwsKinesisStreamDetails$RetentionPeriodHours": "

The number of hours for the data records that are stored in shards to remain accessible.

", "AwsLambdaFunctionDetails$MemorySize": "

The memory that is allocated to the function.

", "AwsLambdaFunctionDetails$Timeout": "

The amount of time that Lambda allows a function to run before stopping it.

", "AwsLambdaFunctionLayer$CodeSize": "

The size of the layer archive in bytes.

", @@ -3845,10 +4182,10 @@ "AwsRdsDbSnapshotDetails$Port": "

The port that the database engine was listening on at the time of the snapshot.

", "AwsRdsDbSnapshotDetails$Iops": "

The provisioned IOPS (I/O operations per second) value of the DB instance at the time of the snapshot.

", "AwsRdsDbSnapshotDetails$PercentProgress": "

The percentage of the estimated data that has been transferred.

", - "AwsRedshiftClusterClusterSnapshotCopyStatus$ManualSnapshotRetentionPeriod": "

The number of days that manual snapshots are retained in the destination region after they are copied from a source region.

If the value is -1, then the manual snapshot is retained indefinitely.

Valid values: Either -1 or an integer between 1 and 3,653

", + "AwsRedshiftClusterClusterSnapshotCopyStatus$ManualSnapshotRetentionPeriod": "

The number of days that manual snapshots are retained in the destination region after they are copied from a source region.

If the value is -1, then the manual snapshot is retained indefinitely.

Valid values: Either -1 or an integer between 1 and 3,653

", "AwsRedshiftClusterClusterSnapshotCopyStatus$RetentionPeriod": "

The number of days to retain automated snapshots in the destination Region after they are copied from a source Region.

", "AwsRedshiftClusterDetails$AutomatedSnapshotRetentionPeriod": "

The number of days that automatic cluster snapshots are retained.

", - "AwsRedshiftClusterDetails$ManualSnapshotRetentionPeriod": "

The default number of days to retain a manual snapshot.

If the value is -1, the snapshot is retained indefinitely.

This setting doesn't change the retention period of existing snapshots.

Valid values: Either -1 or an integer between 1 and 3,653

", + "AwsRedshiftClusterDetails$ManualSnapshotRetentionPeriod": "

The default number of days to retain a manual snapshot.

If the value is -1, the snapshot is retained indefinitely.

This setting doesn't change the retention period of existing snapshots.

Valid values: Either -1 or an integer between 1 and 3,653

", "AwsRedshiftClusterDetails$NumberOfNodes": "

The number of compute nodes in the cluster.

", "AwsRedshiftClusterEndpoint$Port": "

The port that the database engine listens on.

", "AwsRedshiftClusterPendingModifiedValues$AutomatedSnapshotRetentionPeriod": "

The pending or in-progress change to the automated snapshot retention period.

", @@ -3874,14 +4211,17 @@ "AwsSsmComplianceSummary$CompliantLowCount": "

For the patches that are compliant, the number that have a severity of LOW.

", "AwsSsmComplianceSummary$NonCompliantMediumCount": "

For the patches that are noncompliant, the number that have a severity of MEDIUM.

", "AwsSsmComplianceSummary$NonCompliantUnspecifiedCount": "

For the patches that are noncompliant, the number that have a severity of UNSPECIFIED.

", - "AwsWafWebAclRule$Priority": "

Specifies the order in which the rules in a WebACL are evaluated. Rules with a lower value for Priority are evaluated before rules with a higher value. The value must be a unique integer. If you add multiple rules to a WebACL, the values do not need to be consecutive.

", + "AwsWafRegionalRuleGroupRulesDetails$Priority": "

If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order based on the value of Priority.

", + "AwsWafRegionalWebAclRulesListDetails$Priority": "

The order in which WAF evaluates the rules in a web ACL.

", + "AwsWafRuleGroupRulesDetails$Priority": "

If you define more than one rule in a web ACL, WAF evaluates each request against the rules in order based on the value of Priority.

", + "AwsWafWebAclRule$Priority": "

Specifies the order in which the rules in a web ACL are evaluated. Rules with a lower value for Priority are evaluated before rules with a higher value. The value must be a unique integer. If you add multiple rules to a web ACL, the values do not need to be consecutive.

", "BatchImportFindingsResponse$FailedCount": "

The number of findings that failed to import.

", "BatchImportFindingsResponse$SuccessCount": "

The number of findings that were successfully imported.

", "DateRange$Value": "

A date range value for the date filter.

", "FirewallPolicyStatelessRuleGroupReferencesDetails$Priority": "

The order in which to run the stateless rule group.

", "GetInvitationsCountResponse$InvitationsCount": "

The number of all membership invitations sent to this Security Hub member account, not including the currently accepted invitation.

", - "IcmpTypeCode$Code": "

The ICMP code for which to deny or allow access. To deny or allow all codes, use the value -1.

", - "IcmpTypeCode$Type": "

The ICMP type for which to deny or allow access. To deny or allow all types, use the value -1.

", + "IcmpTypeCode$Code": "

The ICMP code for which to deny or allow access. To deny or allow all codes, use the value -1.

", + "IcmpTypeCode$Type": "

The ICMP type for which to deny or allow access. To deny or allow all types, use the value -1.

", "InsightResultValue$Count": "

The number of findings returned for each GroupByAttributeValue.

", "IntegerList$member": null, "IpOrganizationDetails$Asn": "

The Autonomous System Number (ASN) of the internet provider

", @@ -3905,7 +4245,8 @@ "RuleGroupSourceStatelessRuleMatchAttributesSourcePorts$FromPort": "

The starting port value for the port range.

", "RuleGroupSourceStatelessRuleMatchAttributesSourcePorts$ToPort": "

The ending port value for the port range.

", "RuleGroupSourceStatelessRulesDetails$Priority": "

Indicates the order in which to run this rule relative to all of the rules in the stateless rule group.

", - "Severity$Normalized": "

Deprecated. The normalized severity of a finding. This attribute is being deprecated. Instead of providing Normalized, provide Label.

If you provide Label and do not provide Normalized, then Normalized is set automatically as follows.

" + "Severity$Normalized": "

Deprecated. The normalized severity of a finding. This attribute is being deprecated. Instead of providing Normalized, provide Label.

If you provide Label and do not provide Normalized, then Normalized is set automatically as follows.

", + "Threat$ItemCount": "

This total number of items in which the threat has been detected.

" } }, "IntegerList": { @@ -4386,6 +4727,18 @@ "AwsCertificateManagerCertificateResourceRecord$Name": "

The name of the resource.

", "AwsCertificateManagerCertificateResourceRecord$Type": "

The type of resource.

", "AwsCertificateManagerCertificateResourceRecord$Value": "

The value of the resource.

", + "AwsCloudFormationStackDetails$CreationTime": "

The time at which the stack was created.

", + "AwsCloudFormationStackDetails$Description": "

A user-defined description associated with the stack.

", + "AwsCloudFormationStackDetails$LastUpdatedTime": "

The time the nested stack was last updated. This field will only be returned if the stack has been updated at least once.

", + "AwsCloudFormationStackDetails$RoleArn": "

The ARN of an IAM role that's associated with the stack.

", + "AwsCloudFormationStackDetails$StackId": "

Unique identifier of the stack.

", + "AwsCloudFormationStackDetails$StackName": "

The name associated with the stack.

", + "AwsCloudFormationStackDetails$StackStatus": "

Current status of the stack.

", + "AwsCloudFormationStackDetails$StackStatusReason": "

Success or failure message associated with the stack status.

", + "AwsCloudFormationStackDriftInformationDetails$StackDriftStatus": "

Status of the stack's actual configuration compared to its expected template configuration.

", + "AwsCloudFormationStackOutputsDetails$Description": "

A user-defined description associated with the output.

", + "AwsCloudFormationStackOutputsDetails$OutputKey": "

The key associated with the output.

", + "AwsCloudFormationStackOutputsDetails$OutputValue": "

The value associated with the output.

", "AwsCloudFrontDistributionCacheBehavior$ViewerProtocolPolicy": "

The protocol that viewers can use to access the files in an origin. You can specify the following options:

", "AwsCloudFrontDistributionDefaultCacheBehavior$ViewerProtocolPolicy": "

The protocol that viewers can use to access the files in an origin. You can specify the following options:

", "AwsCloudFrontDistributionDetails$DefaultRootObject": "

The object that CloudFront sends in response to requests from the origin (for example, index.html) when a viewer requests the root URL for the distribution (http://www.example.com) instead of an object in your distribution (http://www.example.com/product-description.html).

", @@ -4396,6 +4749,7 @@ "AwsCloudFrontDistributionDetails$WebAclId": "

A unique identifier that specifies the WAF web ACL, if any, to associate with this distribution.

", "AwsCloudFrontDistributionLogging$Bucket": "

The S3 bucket to store the access logs in.

", "AwsCloudFrontDistributionLogging$Prefix": "

An optional string that you want CloudFront to use as a prefix to the access log filenames for this distribution.

", + "AwsCloudFrontDistributionOriginCustomOriginConfig$OriginProtocolPolicy": "

Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin.

", "AwsCloudFrontDistributionOriginItem$DomainName": "

Amazon S3 origins: The DNS name of the S3 bucket from which you want CloudFront to get objects for this origin.

", "AwsCloudFrontDistributionOriginItem$Id": "

A unique identifier for the origin or origin group.

", "AwsCloudFrontDistributionOriginItem$OriginPath": "

An optional element that causes CloudFront to request your content from a directory in your Amazon S3 bucket or your custom origin.

", @@ -4416,6 +4770,21 @@ "AwsCloudTrailTrailDetails$SnsTopicArn": "

The ARN of the SNS topic that is used for notifications of log file delivery.

", "AwsCloudTrailTrailDetails$SnsTopicName": "

The name of the SNS topic that is used for notifications of log file delivery.

", "AwsCloudTrailTrailDetails$TrailArn": "

The ARN of the trail.

", + "AwsCloudWatchAlarmDetails$AlarmArn": "

The ARN of the alarm.

", + "AwsCloudWatchAlarmDetails$AlarmConfigurationUpdatedTimestamp": "

The time stamp of the last update to the alarm configuration.

", + "AwsCloudWatchAlarmDetails$AlarmDescription": "

The description of the alarm.

", + "AwsCloudWatchAlarmDetails$AlarmName": "

The name of the alarm. If you don't specify a name, CloudFront generates a unique physical ID and uses that ID for the alarm name.

", + "AwsCloudWatchAlarmDetails$ComparisonOperator": "

The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.

", + "AwsCloudWatchAlarmDetails$EvaluateLowSampleCountPercentile": "

Used only for alarms based on percentiles. If ignore, the alarm state does not change during periods with too few data points to be statistically significant. If evaluate or this parameter is not used, the alarm is always evaluated and possibly changes state no matter how many data points are available.

", + "AwsCloudWatchAlarmDetails$ExtendedStatistic": "

The percentile statistic for the metric associated with the alarm.

", + "AwsCloudWatchAlarmDetails$MetricName": "

The name of the metric associated with the alarm. This is required for an alarm based on a metric. For an alarm based on a math expression, you use Metrics instead and you can't specify MetricName.

", + "AwsCloudWatchAlarmDetails$Namespace": "

The namespace of the metric associated with the alarm. This is required for an alarm based on a metric. For an alarm based on a math expression, you can't specify Namespace and you use Metrics instead.

", + "AwsCloudWatchAlarmDetails$Statistic": "

The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic.

For an alarm based on a metric, you must specify either Statistic or ExtendedStatistic but not both.

For an alarm based on a math expression, you can't specify Statistic. Instead, you use Metrics.

", + "AwsCloudWatchAlarmDetails$ThresholdMetricId": "

n an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND function used as the threshold for the alarm.

", + "AwsCloudWatchAlarmDetails$TreatMissingData": "

Sets how this alarm is to handle missing data points.

", + "AwsCloudWatchAlarmDetails$Unit": "

The unit of the metric associated with the alarm.

", + "AwsCloudWatchAlarmDimensionsDetails$Name": "

The name of a dimension.

", + "AwsCloudWatchAlarmDimensionsDetails$Value": "

The value of a dimension.

", "AwsCodeBuildProjectArtifactsDetails$ArtifactIdentifier": "

An identifier for the artifact definition.

", "AwsCodeBuildProjectArtifactsDetails$Location": "

Only used when Type is S3. The name of the S3 bucket where the artifact is located.

", "AwsCodeBuildProjectArtifactsDetails$Name": "

Only used when Type is S3. The name of the artifact. Used with NamepaceType and Path to determine the pattern for storing the artifact.

", @@ -4493,6 +4862,11 @@ "AwsEc2InstanceDetails$VpcId": "

The identifier of the VPC that the instance was launched in.

", "AwsEc2InstanceDetails$SubnetId": "

The identifier of the subnet that the instance was launched in.

", "AwsEc2InstanceDetails$LaunchedAt": "

Indicates when the instance was launched.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", + "AwsEc2InstanceDetails$VirtualizationType": "

The virtualization type of the Amazon Machine Image (AMI) required to launch the instance.

", + "AwsEc2InstanceMetadataOptions$HttpEndpoint": "

Enables or disables the HTTP metadata endpoint on the instance.

", + "AwsEc2InstanceMetadataOptions$HttpProtocolIpv6": "

Enables or disables the IPv6 endpoint for the instance metadata service.

", + "AwsEc2InstanceMetadataOptions$HttpTokens": "

The state of token usage for your instance metadata requests.

", + "AwsEc2InstanceMetadataOptions$InstanceMetadataTags": "

Specifies whether to allow access to instance tags from the instance metadata.

", "AwsEc2InstanceNetworkInterfacesDetails$NetworkInterfaceId": "

The identifier of the network interface. The details are in a corresponding AwsEc2NetworkInterfacesDetails object.

", "AwsEc2NetworkAclAssociation$NetworkAclAssociationId": "

The identifier of the association between the network ACL and the subnet.

", "AwsEc2NetworkAclAssociation$NetworkAclId": "

The identifier of the network ACL.

", @@ -4502,7 +4876,7 @@ "AwsEc2NetworkAclDetails$VpcId": "

The identifier of the VPC for the network ACL.

", "AwsEc2NetworkAclEntry$CidrBlock": "

The IPV4 network range for which to deny or allow access.

", "AwsEc2NetworkAclEntry$Ipv6CidrBlock": "

The IPV6 network range for which to deny or allow access.

", - "AwsEc2NetworkAclEntry$Protocol": "

The protocol that the rule applies to. To deny or allow access to all protocols, use the value -1.

", + "AwsEc2NetworkAclEntry$Protocol": "

The protocol that the rule applies to. To deny or allow access to all protocols, use the value -1.

", "AwsEc2NetworkAclEntry$RuleAction": "

Whether the rule is used to allow access or deny access.

", "AwsEc2NetworkInterfaceAttachment$AttachTime": "

Indicates when the attachment initiated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "AwsEc2NetworkInterfaceAttachment$AttachmentId": "

The identifier of the network interface attachment

", @@ -4521,7 +4895,7 @@ "AwsEc2SecurityGroupDetails$GroupId": "

The ID of the security group.

", "AwsEc2SecurityGroupDetails$OwnerId": "

The Amazon Web Services account ID of the owner of the security group.

", "AwsEc2SecurityGroupDetails$VpcId": "

[VPC only] The ID of the VPC for the security group.

", - "AwsEc2SecurityGroupIpPermission$IpProtocol": "

The IP protocol name (tcp, udp, icmp, icmpv6) or number.

[VPC only] Use -1 to specify all protocols.

When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify.

For tcp, udp, and icmp, you must specify a port range.

For icmpv6, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.

", + "AwsEc2SecurityGroupIpPermission$IpProtocol": "

The IP protocol name (tcp, udp, icmp, icmpv6) or number.

[VPC only] Use -1 to specify all protocols.

When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify.

For tcp, udp, and icmp, you must specify a port range.

For icmpv6, the port range is optional. If you omit the port range, traffic for all types and codes is allowed.

", "AwsEc2SecurityGroupIpRange$CidrIp": "

The IPv4 CIDR range. You can specify either a CIDR range or a source security group, but not both. To specify a single IPv4 address, use the /32 prefix length.

", "AwsEc2SecurityGroupIpv6Range$CidrIpv6": "

The IPv6 CIDR range. You can specify either a CIDR range or a source security group, but not both. To specify a single IPv6 address, use the /128 prefix length.

", "AwsEc2SecurityGroupPrefixListId$PrefixListId": "

The ID of the prefix.

", @@ -4539,13 +4913,27 @@ "AwsEc2SubnetDetails$SubnetArn": "

The ARN of the subnet.

", "AwsEc2SubnetDetails$SubnetId": "

The identifier of the subnet.

", "AwsEc2SubnetDetails$VpcId": "

The identifier of the VPC that contains the subnet.

", + "AwsEc2TransitGatewayDetails$Id": "

The ID of the transit gateway.

", + "AwsEc2TransitGatewayDetails$Description": "

The description of the transit gateway.

", + "AwsEc2TransitGatewayDetails$DefaultRouteTablePropagation": "

Turn on or turn off automatic propagation of routes to the default propagation route table.

", + "AwsEc2TransitGatewayDetails$AutoAcceptSharedAttachments": "

Turn on or turn off automatic acceptance of attachment requests.

", + "AwsEc2TransitGatewayDetails$DefaultRouteTableAssociation": "

Turn on or turn off automatic association with the default association route table.

", + "AwsEc2TransitGatewayDetails$AssociationDefaultRouteTableId": "

The ID of the default association route table.

", + "AwsEc2TransitGatewayDetails$PropagationDefaultRouteTableId": "

The ID of the default propagation route table.

", + "AwsEc2TransitGatewayDetails$VpnEcmpSupport": "

Turn on or turn off Equal Cost Multipath Protocol (ECMP) support.

", + "AwsEc2TransitGatewayDetails$DnsSupport": "

Turn on or turn off DNS support.

", + "AwsEc2TransitGatewayDetails$MulticastSupport": "

Indicates whether multicast is supported on the transit gateway.

", "AwsEc2VolumeAttachment$AttachTime": "

The datetime when the attachment initiated.

", "AwsEc2VolumeAttachment$InstanceId": "

The identifier of the EC2 instance.

", "AwsEc2VolumeAttachment$Status": "

The attachment state of the volume.

", "AwsEc2VolumeDetails$CreateTime": "

Indicates when the volume was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", + "AwsEc2VolumeDetails$DeviceName": "

The device name for the volume that is attached to the instance.

", "AwsEc2VolumeDetails$SnapshotId": "

The snapshot from which the volume was created.

", "AwsEc2VolumeDetails$Status": "

The volume state.

", "AwsEc2VolumeDetails$KmsKeyId": "

The ARN of the KMS key that was used to protect the volume encryption key for the volume.

", + "AwsEc2VolumeDetails$VolumeId": "

The ID of the volume.

", + "AwsEc2VolumeDetails$VolumeType": "

The volume type.

", + "AwsEc2VolumeDetails$VolumeScanStatus": "

Indicates whether the volume was scanned or skipped.

", "AwsEc2VpcDetails$DhcpOptionsId": "

The identifier of the set of Dynamic Host Configuration Protocol (DHCP) options that are associated with the VPC. If the default options are associated with the VPC, then this is default.

", "AwsEc2VpcDetails$State": "

The current state of the VPC.

", "AwsEc2VpcEndpointServiceDetails$PrivateDnsName": "

The private DNS name for the service.

", @@ -4553,6 +4941,14 @@ "AwsEc2VpcEndpointServiceDetails$ServiceName": "

The name of the service.

", "AwsEc2VpcEndpointServiceDetails$ServiceState": "

The current state of the service.

", "AwsEc2VpcEndpointServiceServiceTypeDetails$ServiceType": "

The type of service.

", + "AwsEc2VpcPeeringConnectionDetails$ExpirationTime": "

The time at which an unaccepted VPC peering connection will expire.

", + "AwsEc2VpcPeeringConnectionDetails$VpcPeeringConnectionId": "

The ID of the VPC peering connection.

", + "AwsEc2VpcPeeringConnectionStatusDetails$Code": "

The status of the VPC peering connection.

", + "AwsEc2VpcPeeringConnectionStatusDetails$Message": "

A message that provides more information about the status, if applicable.

", + "AwsEc2VpcPeeringConnectionVpcInfoDetails$CidrBlock": "

The IPv4 CIDR block for the VPC.

", + "AwsEc2VpcPeeringConnectionVpcInfoDetails$OwnerId": "

The ID of the Amazon Web Services account that owns the VPC.

", + "AwsEc2VpcPeeringConnectionVpcInfoDetails$Region": "

The Amazon Web Services Region in which the VPC is located.

", + "AwsEc2VpcPeeringConnectionVpcInfoDetails$VpcId": "

The ID of the VPC.

", "AwsEc2VpnConnectionDetails$VpnConnectionId": "

The identifier of the VPN connection.

", "AwsEc2VpnConnectionDetails$State": "

The current state of the VPN connection.

", "AwsEc2VpnConnectionDetails$CustomerGatewayId": "

The identifier of the customer gateway that is at your end of the VPN connection.

", @@ -4590,6 +4986,11 @@ "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$S3BucketName": "

The name of the S3 bucket to send logs to.

", "AwsEcsClusterConfigurationExecuteCommandConfigurationLogConfigurationDetails$S3KeyPrefix": "

Identifies the folder in the S3 bucket to send the logs to.

", "AwsEcsClusterDefaultCapacityProviderStrategyDetails$CapacityProvider": "

The name of the capacity provider.

", + "AwsEcsClusterDetails$ClusterArn": "

The Amazon Resource Name (ARN) that identifies the cluster.

", + "AwsEcsClusterDetails$ClusterName": "

A name that you use to identify your cluster.

", + "AwsEcsClusterDetails$Status": "

The status of the cluster.

", + "AwsEcsContainerDetails$Name": "

The name of the container.

", + "AwsEcsContainerDetails$Image": "

The image used for the container.

", "AwsEcsServiceCapacityProviderStrategyDetails$CapacityProvider": "

The short name of the capacity provider.

", "AwsEcsServiceDeploymentControllerDetails$Type": "

The rolling update (ECS) deployment type replaces the current running version of the container with the latest version.

The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model that is powered by CodeDeploy. This deployment model a new deployment of a service can be verified before production traffic is sent to it.

The external (EXTERNAL) deployment type allows the use of any third-party deployment controller for full control over the deployment process for an Amazon ECS service.

Valid values: ECS | CODE_DEPLOY | EXTERNAL

", "AwsEcsServiceDetails$Cluster": "

The ARN of the cluster that hosts the service.

", @@ -4669,6 +5070,25 @@ "AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails$RootDirectory": "

The directory within the Amazon EFS file system to mount as the root directory inside the host.

", "AwsEcsTaskDefinitionVolumesEfsVolumeConfigurationDetails$TransitEncryption": "

Whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.

", "AwsEcsTaskDefinitionVolumesHostDetails$SourcePath": "

The path on the host container instance that is presented to the container.

", + "AwsEcsTaskDetails$ClusterArn": "

The Amazon Resource Name (ARN) of the cluster that hosts the task.

", + "AwsEcsTaskDetails$TaskDefinitionArn": "

The ARN of the task definition that creates the task.

", + "AwsEcsTaskDetails$Version": "

The version counter for the task.

", + "AwsEcsTaskDetails$CreatedAt": "

The Unix timestamp for the time when the task was created. More specifically, it's for the time when the task entered the PENDING state.

", + "AwsEcsTaskDetails$StartedAt": "

The Unix timestamp for the time when the task started. More specifically, it's for the time when the task transitioned from the PENDING state to the RUNNING state.

", + "AwsEcsTaskDetails$StartedBy": "

The tag specified when a task is started. If an Amazon ECS service started the task, the startedBy parameter contains the deployment ID of that service.

", + "AwsEcsTaskDetails$Group": "

The name of the task group that's associated with the task.

", + "AwsEcsTaskVolumeDetails$Name": "

The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This name is referenced in the sourceVolume parameter of container definition mountPoints.

", + "AwsEcsTaskVolumeHostDetails$SourcePath": "

When the host parameter is used, specify a sourcePath to declare the path on the host container instance that's presented to the container.

", + "AwsEfsAccessPointDetails$AccessPointId": "

The ID of the Amazon EFS access point.

", + "AwsEfsAccessPointDetails$Arn": "

The Amazon Resource Name (ARN) of the Amazon EFS access point.

", + "AwsEfsAccessPointDetails$ClientToken": "

The opaque string specified in the request to ensure idempotent creation.

", + "AwsEfsAccessPointDetails$FileSystemId": "

The ID of the Amazon EFS file system that the access point applies to.

", + "AwsEfsAccessPointPosixUserDetails$Gid": "

The POSIX group ID used for all file system operations using this access point.

", + "AwsEfsAccessPointPosixUserDetails$Uid": "

The POSIX user ID used for all file system operations using this access point.

", + "AwsEfsAccessPointRootDirectoryCreationInfoDetails$OwnerGid": "

Specifies the POSIX group ID to apply to the root directory.

", + "AwsEfsAccessPointRootDirectoryCreationInfoDetails$OwnerUid": "

Specifies the POSIX user ID to apply to the root directory.

", + "AwsEfsAccessPointRootDirectoryCreationInfoDetails$Permissions": "

Specifies the POSIX permissions to apply to the root directory, in the format of an octal number representing the file's mode bits.

", + "AwsEfsAccessPointRootDirectoryDetails$Path": "

Specifies the path on the Amazon EFS file system to expose as the root directory to NFS clients using the access point to access the EFS file system. A path can have up to four subdirectories. If the specified path does not exist, you are required to provide CreationInfo.

", "AwsEksClusterDetails$Arn": "

The ARN of the cluster.

", "AwsEksClusterDetails$CertificateAuthorityData": "

The certificate authority data for the cluster.

", "AwsEksClusterDetails$ClusterStatus": "

The status of the cluster.

", @@ -4706,7 +5126,7 @@ "AwsElasticsearchDomainDomainEndpointOptions$TLSSecurityPolicy": "

The TLS security policy to apply to the HTTPS endpoint of the OpenSearch domain.

Valid values:

", "AwsElasticsearchDomainElasticsearchClusterConfigDetails$DedicatedMasterType": "

The hardware configuration of the computer that hosts the dedicated master node. For example, m3.medium.elasticsearch. If this attribute is specified, then DedicatedMasterEnabled must be true.

", "AwsElasticsearchDomainElasticsearchClusterConfigDetails$InstanceType": "

The instance type for your data nodes. For example, m3.medium.elasticsearch.

", - "AwsElasticsearchDomainEncryptionAtRestOptions$KmsKeyId": "

The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a.

", + "AwsElasticsearchDomainEncryptionAtRestOptions$KmsKeyId": "

The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a.

", "AwsElasticsearchDomainLogPublishingOptionsLogConfig$CloudWatchLogsLogGroupArn": "

The ARN of the CloudWatch Logs group to publish the logs to.

", "AwsElasticsearchDomainServiceSoftwareOptions$AutomatedUpdateDate": "

The epoch time when the deployment window closes for required updates. After this time, Amazon OpenSearch Service schedules the software upgrade automatically.

", "AwsElasticsearchDomainServiceSoftwareOptions$CurrentVersion": "

The version of the service software that is currently installed on the domain.

", @@ -4795,12 +5215,16 @@ "AwsIamUserDetails$UserId": "

The unique identifier for the user.

", "AwsIamUserDetails$UserName": "

The name of the user.

", "AwsIamUserPolicy$PolicyName": "

The name of the policy.

", + "AwsKinesisStreamDetails$Name": "

The name of the Kinesis stream. If you don't specify a name, CloudFront generates a unique physical ID and uses that ID for the stream name.

", + "AwsKinesisStreamDetails$Arn": "

The Amazon Resource Name (ARN) of the Kinesis data stream.

", + "AwsKinesisStreamStreamEncryptionDetails$EncryptionType": "

The encryption type to use.

", + "AwsKinesisStreamStreamEncryptionDetails$KeyId": "

The globally unique identifier for the customer-managed KMS key to use for encryption.

", "AwsKmsKeyDetails$AWSAccountId": "

The twelve-digit account ID of the Amazon Web Services account that owns the KMS key.

", "AwsKmsKeyDetails$KeyId": "

The globally unique identifier for the KMS key.

", "AwsKmsKeyDetails$KeyManager": "

The manager of the KMS key. KMS keys in your Amazon Web Services account are either customer managed or Amazon Web Services managed.

", "AwsKmsKeyDetails$KeyState": "

The state of the KMS key.

", "AwsKmsKeyDetails$Origin": "

The source of the KMS key material.

When this value is AWS_KMS, KMS created the key material.

When this value is EXTERNAL, the key material was imported from your existing key management infrastructure or the KMS key lacks key material.

When this value is AWS_CLOUDHSM, the key material was created in the CloudHSM cluster associated with a custom key store.

", - "AwsKmsKeyDetails$Description": "

A description of the key.

", + "AwsKmsKeyDetails$Description": "

A description of the KMS key.

", "AwsLambdaFunctionCode$S3Bucket": "

An Amazon S3 bucket in the same Amazon Web Services Region as your function. The bucket can be in a different Amazon Web Services account.

", "AwsLambdaFunctionCode$S3Key": "

The Amazon S3 key of the deployment package.

", "AwsLambdaFunctionCode$S3ObjectVersion": "

For versioned objects, the version of the deployment package object to use.

", @@ -4822,6 +5246,8 @@ "AwsLambdaFunctionTracingConfig$Mode": "

The tracing mode.

", "AwsLambdaFunctionVpcConfig$VpcId": "

The ID of the VPC.

", "AwsLambdaLayerVersionDetails$CreatedDate": "

Indicates when the version was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", + "AwsMountPoint$SourceVolume": "

The name of the volume to mount. Must be a volume name referenced in the name parameter of task definition volume.

", + "AwsMountPoint$ContainerPath": "

The path on the container to mount the host volume at.

", "AwsNetworkFirewallFirewallDetails$Description": "

A description of the firewall.

", "AwsNetworkFirewallFirewallDetails$FirewallArn": "

The ARN of the firewall.

", "AwsNetworkFirewallFirewallDetails$FirewallId": "

The identifier of the firewall.

", @@ -4852,6 +5278,9 @@ "AwsOpenSearchServiceDomainDomainEndpointOptionsDetails$TLSSecurityPolicy": "

The TLS security policy to apply to the HTTPS endpoint of the OpenSearch domain.

", "AwsOpenSearchServiceDomainEncryptionAtRestOptionsDetails$KmsKeyId": "

The KMS key ID.

", "AwsOpenSearchServiceDomainLogPublishingOption$CloudWatchLogsLogGroupArn": "

The ARN of the CloudWatch Logs group to publish the logs to.

", + "AwsOpenSearchServiceDomainMasterUserOptionsDetails$MasterUserArn": "

The Amazon Resource Name (ARN) for the master user.

", + "AwsOpenSearchServiceDomainMasterUserOptionsDetails$MasterUserName": "

The username for the master user.

", + "AwsOpenSearchServiceDomainMasterUserOptionsDetails$MasterUserPassword": "

The password for the master user.

", "AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails$AutomatedUpdateDate": "

The epoch time when the deployment window closes for required updates. After this time, OpenSearch Service schedules the software upgrade automatically.

", "AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails$CurrentVersion": "

The version of the service software that is currently installed on the domain.

", "AwsOpenSearchServiceDomainServiceSoftwareOptionsDetails$Description": "

A more detailed description of the service software status.

", @@ -5122,8 +5551,15 @@ "AwsSecurityFindingIdentifier$Id": "

The identifier of the finding that was specified by the finding provider.

", "AwsSecurityFindingIdentifier$ProductArn": "

The ARN generated by Security Hub that uniquely identifies a product that generates findings. This can be the ARN for a third-party product that is integrated with Security Hub, or the ARN for a custom integration.

", "AwsSnsTopicDetails$KmsMasterKeyId": "

The ID of an Amazon Web Services managed key for Amazon SNS or a customer managed key.

", - "AwsSnsTopicDetails$TopicName": "

The name of the topic.

", + "AwsSnsTopicDetails$TopicName": "

The name of the Amazon SNS topic.

", "AwsSnsTopicDetails$Owner": "

The subscription's owner.

", + "AwsSnsTopicDetails$SqsSuccessFeedbackRoleArn": "

Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.

", + "AwsSnsTopicDetails$SqsFailureFeedbackRoleArn": "

Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon SQS endpoint.

", + "AwsSnsTopicDetails$ApplicationSuccessFeedbackRoleArn": "

Indicates failed message delivery status for an Amazon SNS topic that is subscribed to a platform application endpoint.

", + "AwsSnsTopicDetails$FirehoseSuccessFeedbackRoleArn": "

Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an Amazon Kinesis Data Firehose endpoint.

", + "AwsSnsTopicDetails$FirehoseFailureFeedbackRoleArn": "

Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an Amazon Kinesis Data Firehose endpoint.

", + "AwsSnsTopicDetails$HttpSuccessFeedbackRoleArn": "

Indicates successful message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint.

", + "AwsSnsTopicDetails$HttpFailureFeedbackRoleArn": "

Indicates failed message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint.

", "AwsSnsTopicSubscription$Endpoint": "

The subscription's endpoint (format depends on the protocol).

", "AwsSnsTopicSubscription$Protocol": "

The subscription's protocol.

", "AwsSqsQueueDetails$KmsMasterKeyId": "

The ID of an Amazon Web Services managed key for Amazon SQS or a custom KMS key.

", @@ -5147,9 +5583,39 @@ "AwsWafRegionalRateBasedRuleDetails$RuleId": "

The unique identifier for the rate-based rule.

", "AwsWafRegionalRateBasedRuleMatchPredicate$DataId": "

The unique identifier for the predicate.

", "AwsWafRegionalRateBasedRuleMatchPredicate$Type": "

The type of predicate.

", - "AwsWafWebAclDetails$Name": "

A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.

", - "AwsWafWebAclDetails$DefaultAction": "

The action to perform if none of the rules contained in the WebACL match.

", - "AwsWafWebAclDetails$WebAclId": "

A unique identifier for a WebACL.

", + "AwsWafRegionalRuleDetails$MetricName": "

A name for the metrics for the rule.

", + "AwsWafRegionalRuleDetails$Name": "

A descriptive name for the rule.

", + "AwsWafRegionalRuleDetails$RuleId": "

The ID of the rule.

", + "AwsWafRegionalRuleGroupDetails$MetricName": "

A name for the metrics for this rule group.

", + "AwsWafRegionalRuleGroupDetails$Name": "

The descriptive name of the rule group.

", + "AwsWafRegionalRuleGroupDetails$RuleGroupId": "

The ID of the rule group.

", + "AwsWafRegionalRuleGroupRulesActionDetails$Type": "

Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule and, for each object, indicates whether you want to negate the settings.

", + "AwsWafRegionalRuleGroupRulesDetails$RuleId": "

The ID for a rule.

", + "AwsWafRegionalRuleGroupRulesDetails$Type": "

The type of rule in the rule group.

", + "AwsWafRegionalRulePredicateListDetails$DataId": "

A unique identifier for a predicate in a rule, such as ByteMatchSetId or IPSetId.

", + "AwsWafRegionalRulePredicateListDetails$Type": "

The type of predicate in a rule, such as ByteMatch or IPSet.

", + "AwsWafRegionalWebAclDetails$DefaultAction": "

The action to perform if none of the rules contained in the web ACL match.

", + "AwsWafRegionalWebAclDetails$MetricName": "

A name for the metrics for this web ACL.

", + "AwsWafRegionalWebAclDetails$Name": "

A descriptive name for the web ACL.

", + "AwsWafRegionalWebAclDetails$WebAclId": "

The ID of the web ACL.

", + "AwsWafRegionalWebAclRulesListActionDetails$Type": "

For actions that are associated with a rule, the action that WAF takes when a web request matches all conditions in a rule.

", + "AwsWafRegionalWebAclRulesListDetails$RuleId": "

The ID of an WAF Regional rule to associate with a web ACL.

", + "AwsWafRegionalWebAclRulesListDetails$Type": "

For actions that are associated with a rule, the action that WAF takes when a web request matches all conditions in a rule.

", + "AwsWafRegionalWebAclRulesListOverrideActionDetails$Type": "

Overrides the rule evaluation result in the rule group.

", + "AwsWafRuleDetails$MetricName": "

The name of the metrics for this rule.

", + "AwsWafRuleDetails$Name": "

A descriptive name for the rule.

", + "AwsWafRuleDetails$RuleId": "

The ID of the WAF rule.

", + "AwsWafRuleGroupDetails$MetricName": "

The name of the metrics for this rule group.

", + "AwsWafRuleGroupDetails$Name": "

The name of the rule group.

", + "AwsWafRuleGroupDetails$RuleGroupId": "

The ID of the rule group.

", + "AwsWafRuleGroupRulesActionDetails$Type": "

The action that WAF should take on a web request when it matches the rule's statement.

", + "AwsWafRuleGroupRulesDetails$RuleId": "

The rule ID for a rule.

", + "AwsWafRuleGroupRulesDetails$Type": "

The type of rule.

", + "AwsWafRulePredicateListDetails$DataId": "

A unique identifier for a predicate in a rule, such as ByteMatchSetId or IPSetId.

", + "AwsWafRulePredicateListDetails$Type": "

The type of predicate in a rule, such as ByteMatch or IPSet.

", + "AwsWafWebAclDetails$Name": "

A friendly name or description of the web ACL. You can't change the name of a web ACL after you create it.

", + "AwsWafWebAclDetails$DefaultAction": "

The action to perform if none of the rules contained in the web ACL match.

", + "AwsWafWebAclDetails$WebAclId": "

A unique identifier for a web ACL.

", "AwsWafWebAclRule$RuleId": "

The identifier for a rule.

", "AwsWafWebAclRule$Type": "

The rule type.

Valid values: REGULAR | RATE_BASED | GROUP

The default is REGULAR.

", "AwsXrayEncryptionConfigDetails$KeyId": "

The identifier of the KMS key that is used for encryption. Provided if Type is KMS.

", @@ -5167,9 +5633,10 @@ "ClassificationResult$MimeType": "

The type of content that the finding applies to.

", "ClassificationStatus$Code": "

The code that represents the status of the sensitive data detection.

", "ClassificationStatus$Reason": "

A longer description of the current status of the sensitive data detection.

", + "ContainerDetails$ContainerRuntime": "

The runtime of the container.

", "ContainerDetails$Name": "

The name of the container related to a finding.

", - "ContainerDetails$ImageId": "

The identifier of the image related to a finding.

", - "ContainerDetails$ImageName": "

The name of the image related to a finding.

", + "ContainerDetails$ImageId": "

The identifier of the container image related to a finding.

", + "ContainerDetails$ImageName": "

The name of the container image related to a finding.

", "ContainerDetails$LaunchedAt": "

Indicates when the container started.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "Country$CountryCode": "

The 2-letter ISO 3166 country code for the country.

", "Country$CountryName": "

The name of the country.

", @@ -5211,6 +5678,10 @@ "EnableOrganizationAdminAccountRequest$AdminAccountId": "

The Amazon Web Services account identifier of the account to designate as the Security Hub administrator account.

", "FieldMap$key": null, "FieldMap$value": null, + "FilePaths$FilePath": "

Path to the infected or suspicious file on the resource it was detected on.

", + "FilePaths$FileName": "

The name of the infected or suspicious file corresponding to the hash.

", + "FilePaths$ResourceId": "

The Amazon Resource Name (ARN) of the resource on which the threat was detected.

", + "FilePaths$Hash": "

The hash value for the infected or suspicious file.

", "FindingAggregator$FindingAggregatorArn": "

The ARN of the finding aggregator. You use the finding aggregator ARN to retrieve details for, update, and delete the finding aggregator.

", "FindingProviderSeverity$Original": "

The finding provider's original value for the severity.

", "FirewallPolicyStatefulRuleGroupReferencesDetails$ResourceArn": "

The ARN of the stateful rule group.

", @@ -5357,6 +5828,8 @@ "StatusReason$Description": "

The corresponding description for the status reason code.

", "StringFilter$Value": "

The string filter value. Filter values are case sensitive. For example, the product name for control-based findings is Security Hub. If you provide security hub as the filter text, then there is no match.

", "StringList$member": null, + "Threat$Name": "

The name of the threat.

", + "Threat$Severity": "

The severity of the threat.

", "ThreatIntelIndicator$Value": "

The value of a threat intelligence indicator.

", "ThreatIntelIndicator$LastObservedAt": "

Indicates when the most recent instance of a threat intelligence indicator was observed.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "ThreatIntelIndicator$Source": "

The source of the threat intelligence indicator.

", @@ -5375,13 +5848,17 @@ "UpdateInsightRequest$GroupByAttribute": "

The updated GroupBy attribute that defines this insight.

", "UpdateStandardsControlRequest$StandardsControlArn": "

The ARN of the security standard control to enable or disable.

", "UpdateStandardsControlRequest$DisabledReason": "

A description of the reason why you are disabling a security standard control. If you are disabling a control, then this is required.

", + "VolumeMount$Name": "

The name of the volume.

", + "VolumeMount$MountPath": "

The path in the container at which the volume should be mounted.

", + "VpcInfoCidrBlockSetDetails$CidrBlock": "

The IPv4 CIDR block for the VPC.

", + "VpcInfoIpv6CidrBlockSetDetails$Ipv6CidrBlock": "

The IPv6 CIDR block for the VPC.

", "Vulnerability$Id": "

The identifier of the vulnerability.

", "VulnerabilityVendor$Name": "

The name of the vendor.

", "VulnerabilityVendor$Url": "

The URL of the vulnerability advisory.

", "VulnerabilityVendor$VendorSeverity": "

The severity that the vendor assigned to the vulnerability.

", "VulnerabilityVendor$VendorCreatedAt": "

Indicates when the vulnerability advisory was created.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", "VulnerabilityVendor$VendorUpdatedAt": "

Indicates when the vulnerability advisory was last updated.

Uses the date-time format specified in RFC 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces. For example, 2020-03-22T13:22:13.933Z.

", - "WafAction$Type": "

Specifies how you want WAF to respond to requests that match the settings in a rule.

Valid settings include the following:

", + "WafAction$Type": "

Specifies how you want WAF to respond to requests that match the settings in a rule.

Valid settings include the following:

", "WafExcludedRule$RuleId": "

The unique identifier for the rule to exclude from the rule group.

", "WafOverrideAction$Type": "

COUNT overrides the action specified by the individual rule within a RuleGroup .

If set to NONE, the rule's action takes place.

" } @@ -5393,12 +5870,19 @@ "AwsApiGatewayRestApiDetails$BinaryMediaTypes": "

The list of binary media types supported by the REST API.

", "AwsAutoScalingLaunchConfigurationDetails$ClassicLinkVpcSecurityGroups": "

The identifiers of one or more security groups for the VPC that is specified in ClassicLinkVPCId.

", "AwsAutoScalingLaunchConfigurationDetails$SecurityGroups": "

The security groups to assign to the instances in the Auto Scaling group.

", + "AwsCloudFormationStackDetails$Capabilities": "

The capabilities allowed in the stack.

", + "AwsCloudFormationStackDetails$NotificationArns": "

The Amazon Resource Names (ARNs) of the Amazon SNS topic to which stack-related events are published.

", + "AwsCloudFrontDistributionOriginSslProtocols$Items": "

A list that contains allowed SSL/TLS protocols for this distribution.

", + "AwsCloudWatchAlarmDetails$AlarmActions": "

The list of actions, specified as Amazon Resource Names (ARNs) to execute when this alarm transitions into an ALARM state from any other state.

", + "AwsCloudWatchAlarmDetails$InsufficientDataActions": "

The actions to execute when this alarm transitions to the INSUFFICIENT_DATA state from any other state. Each action is specified as an ARN.

", + "AwsCloudWatchAlarmDetails$OkActions": "

The actions to execute when this alarm transitions to the OK state from any other state. Each action is specified as an ARN.

", "AwsCodeBuildProjectVpcConfig$Subnets": "

A list of one or more subnet IDs in your VPC.

", "AwsCodeBuildProjectVpcConfig$SecurityGroupIds": "

A list of one or more security group IDs in your VPC.

", "AwsCorsConfiguration$AllowOrigins": "

The allowed origins for CORS requests.

", "AwsCorsConfiguration$ExposeHeaders": "

The exposed headers for CORS requests.

", "AwsCorsConfiguration$AllowMethods": "

The allowed methods for CORS requests.

", "AwsCorsConfiguration$AllowHeaders": "

The allowed headers for CORS requests.

", + "AwsEc2TransitGatewayDetails$TransitGatewayCidrBlocks": "

The transit gateway Classless Inter-Domain Routing (CIDR) blocks.

", "AwsEc2VpcEndpointServiceDetails$AvailabilityZones": "

The Availability Zones where the service is available.

", "AwsEc2VpcEndpointServiceDetails$BaseEndpointDnsNames": "

The DNS names for the service.

", "AwsEc2VpcEndpointServiceDetails$GatewayLoadBalancerArns": "

The ARNs of the Gateway Load Balancers for the service.

", @@ -5424,6 +5908,7 @@ "AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersDevicesDetails$Permissions": "

The explicit permissions to provide to the container for the device. By default, the container has permissions for read, write, and mknod for the device.

", "AwsEcsTaskDefinitionContainerDefinitionsLinuxParametersTmpfsDetails$MountOptions": "

The list of tmpfs volume mount options.

", "AwsEcsTaskDefinitionDetails$RequiresCompatibilities": "

The task launch types that the task definition was validated against.

", + "AwsEfsAccessPointPosixUserDetails$SecondaryGids": "

Secondary POSIX group IDs used for all file system operations using this access point.

", "AwsEksClusterLoggingClusterLoggingDetails$Types": "

A list of logging types.

", "AwsEksClusterResourcesVpcConfigDetails$SecurityGroupIds": "

The security groups that are associated with the cross-account elastic network interfaces that are used to allow communication between your nodes and the Amazon EKS control plane.

", "AwsEksClusterResourcesVpcConfigDetails$SubnetIds": "

The subnets that are associated with the cluster.

", @@ -6251,6 +6736,12 @@ "TagMap$value": null } }, + "Threat": { + "base": "

Provides information about the threat detected in a security finding and the file paths that were affected by the threat.

", + "refs": { + "ThreatList$member": null + } + }, "ThreatIntelIndicator": { "base": "

Details about the threat intelligence related to a finding.

", "refs": { @@ -6275,6 +6766,12 @@ "ThreatIntelIndicator$Type": "

The type of threat intelligence indicator.

" } }, + "ThreatList": { + "base": null, + "refs": { + "AwsSecurityFinding$Threats": "

Details about the threat detected in a security finding and the file paths that were affected by the threat.

" + } + }, "Timestamp": { "base": null, "refs": { @@ -6379,6 +6876,48 @@ "BatchUpdateFindingsRequest$VerificationState": "

Indicates the veracity of a finding.

The available values for VerificationState are as follows.

" } }, + "VolumeMount": { + "base": "

Describes the mounting of a volume in a container.

", + "refs": { + "VolumeMountList$member": null + } + }, + "VolumeMountList": { + "base": null, + "refs": { + "ContainerDetails$VolumeMounts": "

Provides information about the mounting of a volume in a container.

" + } + }, + "VpcInfoCidrBlockSetDetails": { + "base": "

Provides details about the IPv4 CIDR blocks for the VPC.

", + "refs": { + "VpcInfoCidrBlockSetList$member": null + } + }, + "VpcInfoCidrBlockSetList": { + "base": null, + "refs": { + "AwsEc2VpcPeeringConnectionVpcInfoDetails$CidrBlockSet": "

Information about the IPv4 CIDR blocks for the VPC.

" + } + }, + "VpcInfoIpv6CidrBlockSetDetails": { + "base": "

Provides details about the IPv6 CIDR blocks for the VPC.

", + "refs": { + "VpcInfoIpv6CidrBlockSetList$member": null + } + }, + "VpcInfoIpv6CidrBlockSetList": { + "base": null, + "refs": { + "AwsEc2VpcPeeringConnectionVpcInfoDetails$Ipv6CidrBlockSet": "

The IPv6 CIDR block for the VPC.

" + } + }, + "VpcInfoPeeringOptionsDetails": { + "base": "

Provides information about the VPC peering connection options for the accepter or requester VPC.

", + "refs": { + "AwsEc2VpcPeeringConnectionVpcInfoDetails$PeeringOptions": "

Information about the VPC peering connection options for the accepter or requester VPC.

" + } + }, "Vulnerability": { "base": "

A vulnerability associated with a finding.

", "refs": { @@ -6418,7 +6957,7 @@ "WafOverrideAction": { "base": "

Details about an override action for a rule.

", "refs": { - "AwsWafWebAclRule$OverrideAction": "

Use the OverrideAction to test your RuleGroup.

Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction to None, the RuleGroup blocks a request if any individual rule in the RuleGroup matches the request and is configured to block that request.

However, if you first want to test the RuleGroup, set the OverrideAction to Count. The RuleGroup then overrides any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests are counted.

ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to a WebACL. In this case you do not use ActivatedRule|Action. For all other update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.

" + "AwsWafWebAclRule$OverrideAction": "

Use the OverrideAction to test your RuleGroup.

Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction to None, the RuleGroup blocks a request if any individual rule in the RuleGroup matches the request and is configured to block that request.

However, if you first want to test the RuleGroup, set the OverrideAction to Count. The RuleGroup then overrides any block action specified by individual rules contained within the group. Instead of blocking matching requests, those requests are counted.

ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to a web ACL. In this case you do not use ActivatedRule Action. For all other update requests, ActivatedRule Action is used instead of ActivatedRule OverrideAction.

" } }, "Workflow": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index f8b5eff056d..27c23e5b615 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -3693,14 +3693,26 @@ }, "drs" : { "endpoints" : { + "af-south-1" : { }, + "ap-east-1" : { }, "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-northeast-3" : { }, + "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-south-1" : { }, "eu-west-1" : { }, "eu-west-2" : { }, + "eu-west-3" : { }, + "me-south-1" : { }, + "sa-east-1" : { }, "us-east-1" : { }, "us-east-2" : { }, + "us-west-1" : { }, "us-west-2" : { } } }, @@ -9261,6 +9273,12 @@ }, "hostname" : "portal.sso.eu-north-1.amazonaws.com" }, + "eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "portal.sso.eu-south-1.amazonaws.com" + }, "eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -9789,6 +9807,21 @@ } } }, + "redshift-serverless" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "us-east-1" : { }, + "us-east-2" : { }, + "us-west-2" : { } + } + }, "rekognition" : { "endpoints" : { "ap-northeast-1" : { }, @@ -13359,6 +13392,384 @@ } } }, + "wafv2" : { + "endpoints" : { + "af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "hostname" : "wafv2.af-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.af-south-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "hostname" : "wafv2.ap-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "hostname" : "wafv2.ap-northeast-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-northeast-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "hostname" : "wafv2.ap-northeast-2.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-northeast-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-northeast-3" : { + "credentialScope" : { + "region" : "ap-northeast-3" + }, + "hostname" : "wafv2.ap-northeast-3.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-northeast-3.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-south-1" : { + "credentialScope" : { + "region" : "ap-south-1" + }, + "hostname" : "wafv2.ap-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-south-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-1" : { + "credentialScope" : { + "region" : "ap-southeast-1" + }, + "hostname" : "wafv2.ap-southeast-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-southeast-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-2" : { + "credentialScope" : { + "region" : "ap-southeast-2" + }, + "hostname" : "wafv2.ap-southeast-2.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-southeast-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ap-southeast-3" : { + "credentialScope" : { + "region" : "ap-southeast-3" + }, + "hostname" : "wafv2.ap-southeast-3.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ap-southeast-3.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "hostname" : "wafv2.ca-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-central-1" : { + "credentialScope" : { + "region" : "eu-central-1" + }, + "hostname" : "wafv2.eu-central-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "hostname" : "wafv2.eu-north-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-north-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "wafv2.eu-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-south-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-west-1" : { + "credentialScope" : { + "region" : "eu-west-1" + }, + "hostname" : "wafv2.eu-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-west-2" : { + "credentialScope" : { + "region" : "eu-west-2" + }, + "hostname" : "wafv2.eu-west-2.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "eu-west-3" : { + "credentialScope" : { + "region" : "eu-west-3" + }, + "hostname" : "wafv2.eu-west-3.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.eu-west-3.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "fips-af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.af-south-1.amazonaws.com" + }, + "fips-ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-east-1.amazonaws.com" + }, + "fips-ap-northeast-1" : { + "credentialScope" : { + "region" : "ap-northeast-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-northeast-1.amazonaws.com" + }, + "fips-ap-northeast-2" : { + "credentialScope" : { + "region" : "ap-northeast-2" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-northeast-2.amazonaws.com" + }, + "fips-ap-northeast-3" : { + "credentialScope" : { + "region" : "ap-northeast-3" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-northeast-3.amazonaws.com" + }, + "fips-ap-south-1" : { + "credentialScope" : { + "region" : "ap-south-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-south-1.amazonaws.com" + }, + "fips-ap-southeast-1" : { + "credentialScope" : { + "region" : "ap-southeast-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-southeast-1.amazonaws.com" + }, + "fips-ap-southeast-2" : { + "credentialScope" : { + "region" : "ap-southeast-2" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-southeast-2.amazonaws.com" + }, + "fips-ap-southeast-3" : { + "credentialScope" : { + "region" : "ap-southeast-3" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ap-southeast-3.amazonaws.com" + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.ca-central-1.amazonaws.com" + }, + "fips-eu-central-1" : { + "credentialScope" : { + "region" : "eu-central-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-central-1.amazonaws.com" + }, + "fips-eu-north-1" : { + "credentialScope" : { + "region" : "eu-north-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-north-1.amazonaws.com" + }, + "fips-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-south-1.amazonaws.com" + }, + "fips-eu-west-1" : { + "credentialScope" : { + "region" : "eu-west-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-west-1.amazonaws.com" + }, + "fips-eu-west-2" : { + "credentialScope" : { + "region" : "eu-west-2" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-west-2.amazonaws.com" + }, + "fips-eu-west-3" : { + "credentialScope" : { + "region" : "eu-west-3" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.eu-west-3.amazonaws.com" + }, + "fips-me-south-1" : { + "credentialScope" : { + "region" : "me-south-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.me-south-1.amazonaws.com" + }, + "fips-sa-east-1" : { + "credentialScope" : { + "region" : "sa-east-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.sa-east-1.amazonaws.com" + }, + "fips-us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-east-1.amazonaws.com" + }, + "fips-us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-east-2.amazonaws.com" + }, + "fips-us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-west-1.amazonaws.com" + }, + "fips-us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-west-2.amazonaws.com" + }, + "me-south-1" : { + "credentialScope" : { + "region" : "me-south-1" + }, + "hostname" : "wafv2.me-south-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.me-south-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "sa-east-1" : { + "credentialScope" : { + "region" : "sa-east-1" + }, + "hostname" : "wafv2.sa-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.sa-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-1" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "hostname" : "wafv2.us-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "hostname" : "wafv2.us-east-2.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-1" : { + "credentialScope" : { + "region" : "us-west-1" + }, + "hostname" : "wafv2.us-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "hostname" : "wafv2.us-west-2.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "wellarchitected" : { "endpoints" : { "ap-east-1" : { }, @@ -14615,6 +15026,44 @@ } } }, + "wafv2" : { + "endpoints" : { + "cn-north-1" : { + "credentialScope" : { + "region" : "cn-north-1" + }, + "hostname" : "wafv2.cn-north-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "wafv2-fips.cn-north-1.amazonaws.com.cn", + "tags" : [ "fips" ] + } ] + }, + "cn-northwest-1" : { + "credentialScope" : { + "region" : "cn-northwest-1" + }, + "hostname" : "wafv2.cn-northwest-1.amazonaws.com.cn", + "variants" : [ { + "hostname" : "wafv2-fips.cn-northwest-1.amazonaws.com.cn", + "tags" : [ "fips" ] + } ] + }, + "fips-cn-north-1" : { + "credentialScope" : { + "region" : "cn-north-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.cn-north-1.amazonaws.com.cn" + }, + "fips-cn-northwest-1" : { + "credentialScope" : { + "region" : "cn-northwest-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.cn-northwest-1.amazonaws.com.cn" + } + } + }, "workspaces" : { "endpoints" : { "cn-northwest-1" : { } @@ -18149,6 +18598,44 @@ } } }, + "wafv2" : { + "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-gov-east-1.amazonaws.com" + }, + "fips-us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "deprecated" : true, + "hostname" : "wafv2-fips.us-gov-west-1.amazonaws.com" + }, + "us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "hostname" : "wafv2.us-gov-east-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-gov-west-1" : { + "credentialScope" : { + "region" : "us-gov-west-1" + }, + "hostname" : "wafv2.us-gov-west-1.amazonaws.com", + "variants" : [ { + "hostname" : "wafv2-fips.us-gov-west-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + } + } + }, "workspaces" : { "endpoints" : { "fips-us-gov-west-1" : { diff --git a/service/redshiftdataapiservice/api.go b/service/redshiftdataapiservice/api.go index a959dd442d4..b0ab35f2fd8 100644 --- a/service/redshiftdataapiservice/api.go +++ b/service/redshiftdataapiservice/api.go @@ -63,13 +63,15 @@ func (c *RedshiftDataAPIService) BatchExecuteStatementRequest(input *BatchExecut // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -344,13 +346,15 @@ func (c *RedshiftDataAPIService) DescribeTableRequest(input *DescribeTableInput) // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -495,13 +499,15 @@ func (c *RedshiftDataAPIService) ExecuteStatementRequest(input *ExecuteStatement // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -743,13 +749,15 @@ func (c *RedshiftDataAPIService) ListDatabasesRequest(input *ListDatabasesInput) // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -899,13 +907,15 @@ func (c *RedshiftDataAPIService) ListSchemasRequest(input *ListSchemasInput) (re // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -1197,13 +1207,15 @@ func (c *RedshiftDataAPIService) ListTablesRequest(input *ListTablesInput) (req // * Secrets Manager - when connecting to a cluster, specify the Amazon Resource // Name (ARN) of the secret, the database name, and the cluster identifier // that matches the cluster in the secret. When connecting to a serverless -// endpoint, specify the Amazon Resource Name (ARN) of the secret and the +// workgroup, specify the Amazon Resource Name (ARN) of the secret and the // database name. // // * Temporary credentials - when connecting to a cluster, specify the cluster // identifier, the database name, and the database user name. Also, permission // to call the redshift:GetClusterCredentials operation is required. When -// connecting to a serverless endpoint, specify the database name. +// connecting to a serverless workgroup, specify the workgroup name and database +// name. Also, permission to call the redshift-serverless:GetCredentials +// operation is required. // // 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 @@ -1462,6 +1474,11 @@ type BatchExecuteStatementInput struct { // A value that indicates whether to send an event to the Amazon EventBridge // event bus after the SQL statements run. WithEvent *bool `type:"boolean"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -1494,6 +1511,9 @@ func (s *BatchExecuteStatementInput) Validate() error { if s.Sqls != nil && len(s.Sqls) < 1 { invalidParams.Add(request.NewErrParamMinLen("Sqls", 1)) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if invalidParams.Len() > 0 { return invalidParams @@ -1543,11 +1563,17 @@ func (s *BatchExecuteStatementInput) SetWithEvent(v bool) *BatchExecuteStatement return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *BatchExecuteStatementInput) SetWorkgroupName(v string) *BatchExecuteStatementInput { + s.WorkgroupName = &v + return s +} + type BatchExecuteStatementOutput struct { _ struct{} `type:"structure"` - // The cluster identifier. This parameter is not returned when connecting to - // a serverless endpoint. + // The cluster identifier. This element is not returned when connecting to a + // serverless workgroup. ClusterIdentifier *string `type:"string"` // The date and time (UTC) the statement was created. @@ -1566,6 +1592,10 @@ type BatchExecuteStatementOutput struct { // The name or ARN of the secret that enables access to the database. SecretArn *string `type:"string"` + + // The serverless workgroup name. This element is not returned when connecting + // to a provisioned cluster. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -1622,6 +1652,12 @@ func (s *BatchExecuteStatementOutput) SetSecretArn(v string) *BatchExecuteStatem return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *BatchExecuteStatementOutput) SetWorkgroupName(v string) *BatchExecuteStatementOutput { + s.WorkgroupName = &v + return s +} + type CancelStatementInput struct { _ struct{} `type:"structure"` @@ -2040,6 +2076,9 @@ type DescribeStatementOutput struct { // The date and time (UTC) that the metadata for the SQL statement was last // updated. An example is the time the status last changed. UpdatedAt *time.Time `type:"timestamp"` + + // The serverless workgroup name. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -2168,6 +2207,12 @@ func (s *DescribeStatementOutput) SetUpdatedAt(v time.Time) *DescribeStatementOu return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *DescribeStatementOutput) SetWorkgroupName(v string) *DescribeStatementOutput { + s.WorkgroupName = &v + return s +} + type DescribeTableInput struct { _ struct{} `type:"structure"` @@ -2214,6 +2259,11 @@ type DescribeTableInput struct { // schemas are returned. If no table and no schema is specified, then all tables // for all schemas in the database are returned Table *string `type:"string"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -2240,6 +2290,9 @@ func (s *DescribeTableInput) Validate() error { if s.Database == nil { invalidParams.Add(request.NewErrParamRequired("Database")) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if invalidParams.Len() > 0 { return invalidParams @@ -2301,6 +2354,12 @@ func (s *DescribeTableInput) SetTable(v string) *DescribeTableInput { return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *DescribeTableInput) SetWorkgroupName(v string) *DescribeTableInput { + s.WorkgroupName = &v + return s +} + type DescribeTableOutput struct { _ struct{} `type:"structure"` @@ -2460,6 +2519,11 @@ type ExecuteStatementInput struct { // A value that indicates whether to send an event to the Amazon EventBridge // event bus after the SQL statement runs. WithEvent *bool `type:"boolean"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -2492,6 +2556,9 @@ func (s *ExecuteStatementInput) Validate() error { if s.Sql == nil { invalidParams.Add(request.NewErrParamRequired("Sql")) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if s.Parameters != nil { for i, v := range s.Parameters { if v == nil { @@ -2557,11 +2624,17 @@ func (s *ExecuteStatementInput) SetWithEvent(v bool) *ExecuteStatementInput { return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ExecuteStatementInput) SetWorkgroupName(v string) *ExecuteStatementInput { + s.WorkgroupName = &v + return s +} + type ExecuteStatementOutput struct { _ struct{} `type:"structure"` - // The cluster identifier. This parameter is not returned when connecting to - // a serverless endpoint. + // The cluster identifier. This element is not returned when connecting to a + // serverless workgroup. ClusterIdentifier *string `type:"string"` // The date and time (UTC) the statement was created. @@ -2580,6 +2653,10 @@ type ExecuteStatementOutput struct { // The name or ARN of the secret that enables access to the database. SecretArn *string `type:"string"` + + // The serverless workgroup name. This element is not returned when connecting + // to a provisioned cluster. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -2636,6 +2713,12 @@ func (s *ExecuteStatementOutput) SetSecretArn(v string) *ExecuteStatementOutput return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ExecuteStatementOutput) SetWorkgroupName(v string) *ExecuteStatementOutput { + s.WorkgroupName = &v + return s +} + // A data value in a column. type Field struct { _ struct{} `type:"structure"` @@ -2941,6 +3024,11 @@ type ListDatabasesInput struct { // The name or ARN of the secret that enables access to the database. This parameter // is required when authenticating using Secrets Manager. SecretArn *string `type:"string"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -2967,6 +3055,9 @@ func (s *ListDatabasesInput) Validate() error { if s.Database == nil { invalidParams.Add(request.NewErrParamRequired("Database")) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if invalidParams.Len() > 0 { return invalidParams @@ -3010,6 +3101,12 @@ func (s *ListDatabasesInput) SetSecretArn(v string) *ListDatabasesInput { return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ListDatabasesInput) SetWorkgroupName(v string) *ListDatabasesInput { + s.WorkgroupName = &v + return s +} + type ListDatabasesOutput struct { _ struct{} `type:"structure"` @@ -3096,6 +3193,11 @@ type ListSchemasInput struct { // The name or ARN of the secret that enables access to the database. This parameter // is required when authenticating using Secrets Manager. SecretArn *string `type:"string"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -3122,6 +3224,9 @@ func (s *ListSchemasInput) Validate() error { if s.Database == nil { invalidParams.Add(request.NewErrParamRequired("Database")) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if invalidParams.Len() > 0 { return invalidParams @@ -3177,6 +3282,12 @@ func (s *ListSchemasInput) SetSecretArn(v string) *ListSchemasInput { return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ListSchemasInput) SetWorkgroupName(v string) *ListSchemasInput { + s.WorkgroupName = &v + return s +} + type ListSchemasOutput struct { _ struct{} `type:"structure"` @@ -3416,6 +3527,11 @@ type ListTablesInput struct { // neither SchemaPattern or TablePattern are specified, then all tables are // returned. TablePattern *string `type:"string"` + + // The serverless workgroup name. This parameter is required when connecting + // to a serverless workgroup and authenticating using either Secrets Manager + // or temporary credentials. + WorkgroupName *string `min:"3" type:"string"` } // String returns the string representation. @@ -3442,6 +3558,9 @@ func (s *ListTablesInput) Validate() error { if s.Database == nil { invalidParams.Add(request.NewErrParamRequired("Database")) } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } if invalidParams.Len() > 0 { return invalidParams @@ -3503,6 +3622,12 @@ func (s *ListTablesInput) SetTablePattern(v string) *ListTablesInput { return s } +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ListTablesInput) SetWorkgroupName(v string) *ListTablesInput { + s.WorkgroupName = &v + return s +} + type ListTablesOutput struct { _ struct{} `type:"structure"` diff --git a/service/redshiftdataapiservice/doc.go b/service/redshiftdataapiservice/doc.go index 979fecbf8f8..3cddd62f9c6 100644 --- a/service/redshiftdataapiservice/doc.go +++ b/service/redshiftdataapiservice/doc.go @@ -7,8 +7,8 @@ // tables. You can run SQL statements, which are committed if the statement // succeeds. // -// For more information about the Amazon Redshift Data API, see Using the Amazon -// Redshift Data API (https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html) +// For more information about the Amazon Redshift Data API and CLI usage examples, +// see Using the Amazon Redshift Data API (https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html) // in the Amazon Redshift Cluster Management Guide. // // See https://docs.aws.amazon.com/goto/WebAPI/redshift-data-2019-12-20 for more information on this service. diff --git a/service/redshiftserverless/api.go b/service/redshiftserverless/api.go new file mode 100644 index 00000000000..20138e153ad --- /dev/null +++ b/service/redshiftserverless/api.go @@ -0,0 +1,9457 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package redshiftserverless + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" +) + +const opConvertRecoveryPointToSnapshot = "ConvertRecoveryPointToSnapshot" + +// ConvertRecoveryPointToSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the ConvertRecoveryPointToSnapshot 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 ConvertRecoveryPointToSnapshot for more information on using the ConvertRecoveryPointToSnapshot +// 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 ConvertRecoveryPointToSnapshotRequest method. +// req, resp := client.ConvertRecoveryPointToSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ConvertRecoveryPointToSnapshot +func (c *RedshiftServerless) ConvertRecoveryPointToSnapshotRequest(input *ConvertRecoveryPointToSnapshotInput) (req *request.Request, output *ConvertRecoveryPointToSnapshotOutput) { + op := &request.Operation{ + Name: opConvertRecoveryPointToSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ConvertRecoveryPointToSnapshotInput{} + } + + output = &ConvertRecoveryPointToSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// ConvertRecoveryPointToSnapshot API operation for Redshift Serverless. +// +// Converts a recovery point to a snapshot. For more information about recovery +// points and snapshots, see Working with snapshots and recovery points (https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-snapshots-recovery.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation ConvertRecoveryPointToSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ConvertRecoveryPointToSnapshot +func (c *RedshiftServerless) ConvertRecoveryPointToSnapshot(input *ConvertRecoveryPointToSnapshotInput) (*ConvertRecoveryPointToSnapshotOutput, error) { + req, out := c.ConvertRecoveryPointToSnapshotRequest(input) + return out, req.Send() +} + +// ConvertRecoveryPointToSnapshotWithContext is the same as ConvertRecoveryPointToSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See ConvertRecoveryPointToSnapshot 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 *RedshiftServerless) ConvertRecoveryPointToSnapshotWithContext(ctx aws.Context, input *ConvertRecoveryPointToSnapshotInput, opts ...request.Option) (*ConvertRecoveryPointToSnapshotOutput, error) { + req, out := c.ConvertRecoveryPointToSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateEndpointAccess = "CreateEndpointAccess" + +// CreateEndpointAccessRequest generates a "aws/request.Request" representing the +// client's request for the CreateEndpointAccess 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 CreateEndpointAccess for more information on using the CreateEndpointAccess +// 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 CreateEndpointAccessRequest method. +// req, resp := client.CreateEndpointAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateEndpointAccess +func (c *RedshiftServerless) CreateEndpointAccessRequest(input *CreateEndpointAccessInput) (req *request.Request, output *CreateEndpointAccessOutput) { + op := &request.Operation{ + Name: opCreateEndpointAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateEndpointAccessInput{} + } + + output = &CreateEndpointAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateEndpointAccess API operation for Redshift Serverless. +// +// Creates an Amazon Redshift Serverless managed VPC endpoint. +// +// 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 Redshift Serverless's +// API operation CreateEndpointAccess for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateEndpointAccess +func (c *RedshiftServerless) CreateEndpointAccess(input *CreateEndpointAccessInput) (*CreateEndpointAccessOutput, error) { + req, out := c.CreateEndpointAccessRequest(input) + return out, req.Send() +} + +// CreateEndpointAccessWithContext is the same as CreateEndpointAccess with the addition of +// the ability to pass a context and additional request options. +// +// See CreateEndpointAccess 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 *RedshiftServerless) CreateEndpointAccessWithContext(ctx aws.Context, input *CreateEndpointAccessInput, opts ...request.Option) (*CreateEndpointAccessOutput, error) { + req, out := c.CreateEndpointAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateNamespace = "CreateNamespace" + +// CreateNamespaceRequest generates a "aws/request.Request" representing the +// client's request for the CreateNamespace 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 CreateNamespace for more information on using the CreateNamespace +// 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 CreateNamespaceRequest method. +// req, resp := client.CreateNamespaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateNamespace +func (c *RedshiftServerless) CreateNamespaceRequest(input *CreateNamespaceInput) (req *request.Request, output *CreateNamespaceOutput) { + op := &request.Operation{ + Name: opCreateNamespace, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateNamespaceInput{} + } + + output = &CreateNamespaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateNamespace API operation for Redshift Serverless. +// +// Creates a namespace in Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation CreateNamespace for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * TooManyTagsException +// The request exceeded the number of tags allowed for a resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateNamespace +func (c *RedshiftServerless) CreateNamespace(input *CreateNamespaceInput) (*CreateNamespaceOutput, error) { + req, out := c.CreateNamespaceRequest(input) + return out, req.Send() +} + +// CreateNamespaceWithContext is the same as CreateNamespace with the addition of +// the ability to pass a context and additional request options. +// +// See CreateNamespace 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 *RedshiftServerless) CreateNamespaceWithContext(ctx aws.Context, input *CreateNamespaceInput, opts ...request.Option) (*CreateNamespaceOutput, error) { + req, out := c.CreateNamespaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateSnapshot = "CreateSnapshot" + +// CreateSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the CreateSnapshot 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 CreateSnapshot for more information on using the CreateSnapshot +// 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 CreateSnapshotRequest method. +// req, resp := client.CreateSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateSnapshot +func (c *RedshiftServerless) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Request, output *CreateSnapshotOutput) { + op := &request.Operation{ + Name: opCreateSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateSnapshotInput{} + } + + output = &CreateSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateSnapshot API operation for Redshift Serverless. +// +// Creates a snapshot of all databases in a namespace. For more information +// about snapshots, see Working with snapshots and recovery points (https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-snapshots-recovery.html). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation CreateSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateSnapshot +func (c *RedshiftServerless) CreateSnapshot(input *CreateSnapshotInput) (*CreateSnapshotOutput, error) { + req, out := c.CreateSnapshotRequest(input) + return out, req.Send() +} + +// CreateSnapshotWithContext is the same as CreateSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See CreateSnapshot 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 *RedshiftServerless) CreateSnapshotWithContext(ctx aws.Context, input *CreateSnapshotInput, opts ...request.Option) (*CreateSnapshotOutput, error) { + req, out := c.CreateSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateUsageLimit = "CreateUsageLimit" + +// CreateUsageLimitRequest generates a "aws/request.Request" representing the +// client's request for the CreateUsageLimit 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 CreateUsageLimit for more information on using the CreateUsageLimit +// 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 CreateUsageLimitRequest method. +// req, resp := client.CreateUsageLimitRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateUsageLimit +func (c *RedshiftServerless) CreateUsageLimitRequest(input *CreateUsageLimitInput) (req *request.Request, output *CreateUsageLimitOutput) { + op := &request.Operation{ + Name: opCreateUsageLimit, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateUsageLimitInput{} + } + + output = &CreateUsageLimitOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateUsageLimit API operation for Redshift Serverless. +// +// Creates a usage limit for a specified Amazon Redshift Serverless usage type. +// The usage limit is identified by the returned usage limit identifier. +// +// 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 Redshift Serverless's +// API operation CreateUsageLimit for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateUsageLimit +func (c *RedshiftServerless) CreateUsageLimit(input *CreateUsageLimitInput) (*CreateUsageLimitOutput, error) { + req, out := c.CreateUsageLimitRequest(input) + return out, req.Send() +} + +// CreateUsageLimitWithContext is the same as CreateUsageLimit with the addition of +// the ability to pass a context and additional request options. +// +// See CreateUsageLimit 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 *RedshiftServerless) CreateUsageLimitWithContext(ctx aws.Context, input *CreateUsageLimitInput, opts ...request.Option) (*CreateUsageLimitOutput, error) { + req, out := c.CreateUsageLimitRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opCreateWorkgroup = "CreateWorkgroup" + +// CreateWorkgroupRequest generates a "aws/request.Request" representing the +// client's request for the CreateWorkgroup 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 CreateWorkgroup for more information on using the CreateWorkgroup +// 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 CreateWorkgroupRequest method. +// req, resp := client.CreateWorkgroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateWorkgroup +func (c *RedshiftServerless) CreateWorkgroupRequest(input *CreateWorkgroupInput) (req *request.Request, output *CreateWorkgroupOutput) { + op := &request.Operation{ + Name: opCreateWorkgroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateWorkgroupInput{} + } + + output = &CreateWorkgroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateWorkgroup API operation for Redshift Serverless. +// +// Creates an workgroup in Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation CreateWorkgroup for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * InsufficientCapacityException +// There is an insufficient capacity to perform the action. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * TooManyTagsException +// The request exceeded the number of tags allowed for a resource. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/CreateWorkgroup +func (c *RedshiftServerless) CreateWorkgroup(input *CreateWorkgroupInput) (*CreateWorkgroupOutput, error) { + req, out := c.CreateWorkgroupRequest(input) + return out, req.Send() +} + +// CreateWorkgroupWithContext is the same as CreateWorkgroup with the addition of +// the ability to pass a context and additional request options. +// +// See CreateWorkgroup 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 *RedshiftServerless) CreateWorkgroupWithContext(ctx aws.Context, input *CreateWorkgroupInput, opts ...request.Option) (*CreateWorkgroupOutput, error) { + req, out := c.CreateWorkgroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteEndpointAccess = "DeleteEndpointAccess" + +// DeleteEndpointAccessRequest generates a "aws/request.Request" representing the +// client's request for the DeleteEndpointAccess 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 DeleteEndpointAccess for more information on using the DeleteEndpointAccess +// 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 DeleteEndpointAccessRequest method. +// req, resp := client.DeleteEndpointAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteEndpointAccess +func (c *RedshiftServerless) DeleteEndpointAccessRequest(input *DeleteEndpointAccessInput) (req *request.Request, output *DeleteEndpointAccessOutput) { + op := &request.Operation{ + Name: opDeleteEndpointAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteEndpointAccessInput{} + } + + output = &DeleteEndpointAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteEndpointAccess API operation for Redshift Serverless. +// +// Deletes an Amazon Redshift Serverless managed VPC endpoint. +// +// 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 Redshift Serverless's +// API operation DeleteEndpointAccess for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteEndpointAccess +func (c *RedshiftServerless) DeleteEndpointAccess(input *DeleteEndpointAccessInput) (*DeleteEndpointAccessOutput, error) { + req, out := c.DeleteEndpointAccessRequest(input) + return out, req.Send() +} + +// DeleteEndpointAccessWithContext is the same as DeleteEndpointAccess with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteEndpointAccess 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 *RedshiftServerless) DeleteEndpointAccessWithContext(ctx aws.Context, input *DeleteEndpointAccessInput, opts ...request.Option) (*DeleteEndpointAccessOutput, error) { + req, out := c.DeleteEndpointAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteNamespace = "DeleteNamespace" + +// DeleteNamespaceRequest generates a "aws/request.Request" representing the +// client's request for the DeleteNamespace 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 DeleteNamespace for more information on using the DeleteNamespace +// 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 DeleteNamespaceRequest method. +// req, resp := client.DeleteNamespaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteNamespace +func (c *RedshiftServerless) DeleteNamespaceRequest(input *DeleteNamespaceInput) (req *request.Request, output *DeleteNamespaceOutput) { + op := &request.Operation{ + Name: opDeleteNamespace, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteNamespaceInput{} + } + + output = &DeleteNamespaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteNamespace API operation for Redshift Serverless. +// +// Deletes a namespace from Amazon Redshift Serverless. Before you delete the +// namespace, you can create a final snapshot that has all of the data within +// the namespace. +// +// 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 Redshift Serverless's +// API operation DeleteNamespace for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteNamespace +func (c *RedshiftServerless) DeleteNamespace(input *DeleteNamespaceInput) (*DeleteNamespaceOutput, error) { + req, out := c.DeleteNamespaceRequest(input) + return out, req.Send() +} + +// DeleteNamespaceWithContext is the same as DeleteNamespace with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteNamespace 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 *RedshiftServerless) DeleteNamespaceWithContext(ctx aws.Context, input *DeleteNamespaceInput, opts ...request.Option) (*DeleteNamespaceOutput, error) { + req, out := c.DeleteNamespaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteResourcePolicy = "DeleteResourcePolicy" + +// DeleteResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteResourcePolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteResourcePolicy for more information on using the DeleteResourcePolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteResourcePolicyRequest method. +// req, resp := client.DeleteResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteResourcePolicy +func (c *RedshiftServerless) DeleteResourcePolicyRequest(input *DeleteResourcePolicyInput) (req *request.Request, output *DeleteResourcePolicyOutput) { + op := &request.Operation{ + Name: opDeleteResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteResourcePolicyInput{} + } + + output = &DeleteResourcePolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteResourcePolicy API operation for Redshift Serverless. +// +// Deletes the specified resource policy. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation DeleteResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteResourcePolicy +func (c *RedshiftServerless) DeleteResourcePolicy(input *DeleteResourcePolicyInput) (*DeleteResourcePolicyOutput, error) { + req, out := c.DeleteResourcePolicyRequest(input) + return out, req.Send() +} + +// DeleteResourcePolicyWithContext is the same as DeleteResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteResourcePolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *RedshiftServerless) DeleteResourcePolicyWithContext(ctx aws.Context, input *DeleteResourcePolicyInput, opts ...request.Option) (*DeleteResourcePolicyOutput, error) { + req, out := c.DeleteResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteSnapshot = "DeleteSnapshot" + +// DeleteSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the DeleteSnapshot 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 DeleteSnapshot for more information on using the DeleteSnapshot +// 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 DeleteSnapshotRequest method. +// req, resp := client.DeleteSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteSnapshot +func (c *RedshiftServerless) DeleteSnapshotRequest(input *DeleteSnapshotInput) (req *request.Request, output *DeleteSnapshotOutput) { + op := &request.Operation{ + Name: opDeleteSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteSnapshotInput{} + } + + output = &DeleteSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteSnapshot API operation for Redshift Serverless. +// +// Deletes a snapshot from Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation DeleteSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteSnapshot +func (c *RedshiftServerless) DeleteSnapshot(input *DeleteSnapshotInput) (*DeleteSnapshotOutput, error) { + req, out := c.DeleteSnapshotRequest(input) + return out, req.Send() +} + +// DeleteSnapshotWithContext is the same as DeleteSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteSnapshot 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 *RedshiftServerless) DeleteSnapshotWithContext(ctx aws.Context, input *DeleteSnapshotInput, opts ...request.Option) (*DeleteSnapshotOutput, error) { + req, out := c.DeleteSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteUsageLimit = "DeleteUsageLimit" + +// DeleteUsageLimitRequest generates a "aws/request.Request" representing the +// client's request for the DeleteUsageLimit 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 DeleteUsageLimit for more information on using the DeleteUsageLimit +// 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 DeleteUsageLimitRequest method. +// req, resp := client.DeleteUsageLimitRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteUsageLimit +func (c *RedshiftServerless) DeleteUsageLimitRequest(input *DeleteUsageLimitInput) (req *request.Request, output *DeleteUsageLimitOutput) { + op := &request.Operation{ + Name: opDeleteUsageLimit, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteUsageLimitInput{} + } + + output = &DeleteUsageLimitOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteUsageLimit API operation for Redshift Serverless. +// +// Deletes a usage limit from Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation DeleteUsageLimit for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteUsageLimit +func (c *RedshiftServerless) DeleteUsageLimit(input *DeleteUsageLimitInput) (*DeleteUsageLimitOutput, error) { + req, out := c.DeleteUsageLimitRequest(input) + return out, req.Send() +} + +// DeleteUsageLimitWithContext is the same as DeleteUsageLimit with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteUsageLimit 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 *RedshiftServerless) DeleteUsageLimitWithContext(ctx aws.Context, input *DeleteUsageLimitInput, opts ...request.Option) (*DeleteUsageLimitOutput, error) { + req, out := c.DeleteUsageLimitRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDeleteWorkgroup = "DeleteWorkgroup" + +// DeleteWorkgroupRequest generates a "aws/request.Request" representing the +// client's request for the DeleteWorkgroup 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 DeleteWorkgroup for more information on using the DeleteWorkgroup +// 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 DeleteWorkgroupRequest method. +// req, resp := client.DeleteWorkgroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteWorkgroup +func (c *RedshiftServerless) DeleteWorkgroupRequest(input *DeleteWorkgroupInput) (req *request.Request, output *DeleteWorkgroupOutput) { + op := &request.Operation{ + Name: opDeleteWorkgroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteWorkgroupInput{} + } + + output = &DeleteWorkgroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteWorkgroup API operation for Redshift Serverless. +// +// Deletes a workgroup. +// +// 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 Redshift Serverless's +// API operation DeleteWorkgroup for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/DeleteWorkgroup +func (c *RedshiftServerless) DeleteWorkgroup(input *DeleteWorkgroupInput) (*DeleteWorkgroupOutput, error) { + req, out := c.DeleteWorkgroupRequest(input) + return out, req.Send() +} + +// DeleteWorkgroupWithContext is the same as DeleteWorkgroup with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteWorkgroup 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 *RedshiftServerless) DeleteWorkgroupWithContext(ctx aws.Context, input *DeleteWorkgroupInput, opts ...request.Option) (*DeleteWorkgroupOutput, error) { + req, out := c.DeleteWorkgroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetCredentials = "GetCredentials" + +// GetCredentialsRequest generates a "aws/request.Request" representing the +// client's request for the GetCredentials 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 GetCredentials for more information on using the GetCredentials +// 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 GetCredentialsRequest method. +// req, resp := client.GetCredentialsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetCredentials +func (c *RedshiftServerless) GetCredentialsRequest(input *GetCredentialsInput) (req *request.Request, output *GetCredentialsOutput) { + op := &request.Operation{ + Name: opGetCredentials, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetCredentialsInput{} + } + + output = &GetCredentialsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetCredentials API operation for Redshift Serverless. +// +// Returns a database user name and temporary password with temporary authorization +// to log in to Amazon Redshift Serverless. +// +// By default, the temporary credentials expire in 900 seconds. You can optionally +// specify a duration between 900 seconds (15 minutes) and 3600 seconds (60 +// minutes). +// +//

The Identity and Access Management (IAM) user or role that runs GetCredentials +// must have an IAM policy attached that allows access to all necessary actions +// and resources.

If the DbName parameter is specified, +// the IAM policy must allow access to the resource dbname for the specified +// database name.

+// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation GetCredentials for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetCredentials +func (c *RedshiftServerless) GetCredentials(input *GetCredentialsInput) (*GetCredentialsOutput, error) { + req, out := c.GetCredentialsRequest(input) + return out, req.Send() +} + +// GetCredentialsWithContext is the same as GetCredentials with the addition of +// the ability to pass a context and additional request options. +// +// See GetCredentials 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 *RedshiftServerless) GetCredentialsWithContext(ctx aws.Context, input *GetCredentialsInput, opts ...request.Option) (*GetCredentialsOutput, error) { + req, out := c.GetCredentialsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetEndpointAccess = "GetEndpointAccess" + +// GetEndpointAccessRequest generates a "aws/request.Request" representing the +// client's request for the GetEndpointAccess 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 GetEndpointAccess for more information on using the GetEndpointAccess +// 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 GetEndpointAccessRequest method. +// req, resp := client.GetEndpointAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetEndpointAccess +func (c *RedshiftServerless) GetEndpointAccessRequest(input *GetEndpointAccessInput) (req *request.Request, output *GetEndpointAccessOutput) { + op := &request.Operation{ + Name: opGetEndpointAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEndpointAccessInput{} + } + + output = &GetEndpointAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEndpointAccess API operation for Redshift Serverless. +// +// Returns information, such as the name, about a VPC endpoint. +// +// 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 Redshift Serverless's +// API operation GetEndpointAccess for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetEndpointAccess +func (c *RedshiftServerless) GetEndpointAccess(input *GetEndpointAccessInput) (*GetEndpointAccessOutput, error) { + req, out := c.GetEndpointAccessRequest(input) + return out, req.Send() +} + +// GetEndpointAccessWithContext is the same as GetEndpointAccess with the addition of +// the ability to pass a context and additional request options. +// +// See GetEndpointAccess 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 *RedshiftServerless) GetEndpointAccessWithContext(ctx aws.Context, input *GetEndpointAccessInput, opts ...request.Option) (*GetEndpointAccessOutput, error) { + req, out := c.GetEndpointAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetNamespace = "GetNamespace" + +// GetNamespaceRequest generates a "aws/request.Request" representing the +// client's request for the GetNamespace 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 GetNamespace for more information on using the GetNamespace +// 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 GetNamespaceRequest method. +// req, resp := client.GetNamespaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetNamespace +func (c *RedshiftServerless) GetNamespaceRequest(input *GetNamespaceInput) (req *request.Request, output *GetNamespaceOutput) { + op := &request.Operation{ + Name: opGetNamespace, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetNamespaceInput{} + } + + output = &GetNamespaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetNamespace API operation for Redshift Serverless. +// +// Returns information about a namespace in Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation GetNamespace for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetNamespace +func (c *RedshiftServerless) GetNamespace(input *GetNamespaceInput) (*GetNamespaceOutput, error) { + req, out := c.GetNamespaceRequest(input) + return out, req.Send() +} + +// GetNamespaceWithContext is the same as GetNamespace with the addition of +// the ability to pass a context and additional request options. +// +// See GetNamespace 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 *RedshiftServerless) GetNamespaceWithContext(ctx aws.Context, input *GetNamespaceInput, opts ...request.Option) (*GetNamespaceOutput, error) { + req, out := c.GetNamespaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetRecoveryPoint = "GetRecoveryPoint" + +// GetRecoveryPointRequest generates a "aws/request.Request" representing the +// client's request for the GetRecoveryPoint 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 GetRecoveryPoint for more information on using the GetRecoveryPoint +// 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 GetRecoveryPointRequest method. +// req, resp := client.GetRecoveryPointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetRecoveryPoint +func (c *RedshiftServerless) GetRecoveryPointRequest(input *GetRecoveryPointInput) (req *request.Request, output *GetRecoveryPointOutput) { + op := &request.Operation{ + Name: opGetRecoveryPoint, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetRecoveryPointInput{} + } + + output = &GetRecoveryPointOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetRecoveryPoint API operation for Redshift Serverless. +// +// Returns information about a recovery point. +// +// 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 Redshift Serverless's +// API operation GetRecoveryPoint for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetRecoveryPoint +func (c *RedshiftServerless) GetRecoveryPoint(input *GetRecoveryPointInput) (*GetRecoveryPointOutput, error) { + req, out := c.GetRecoveryPointRequest(input) + return out, req.Send() +} + +// GetRecoveryPointWithContext is the same as GetRecoveryPoint with the addition of +// the ability to pass a context and additional request options. +// +// See GetRecoveryPoint 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 *RedshiftServerless) GetRecoveryPointWithContext(ctx aws.Context, input *GetRecoveryPointInput, opts ...request.Option) (*GetRecoveryPointOutput, error) { + req, out := c.GetRecoveryPointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetResourcePolicy = "GetResourcePolicy" + +// GetResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the GetResourcePolicy 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 GetResourcePolicy for more information on using the GetResourcePolicy +// 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 GetResourcePolicyRequest method. +// req, resp := client.GetResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetResourcePolicy +func (c *RedshiftServerless) GetResourcePolicyRequest(input *GetResourcePolicyInput) (req *request.Request, output *GetResourcePolicyOutput) { + op := &request.Operation{ + Name: opGetResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetResourcePolicyInput{} + } + + output = &GetResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetResourcePolicy API operation for Redshift Serverless. +// +// Returns a resource policy. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation GetResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetResourcePolicy +func (c *RedshiftServerless) GetResourcePolicy(input *GetResourcePolicyInput) (*GetResourcePolicyOutput, error) { + req, out := c.GetResourcePolicyRequest(input) + return out, req.Send() +} + +// GetResourcePolicyWithContext is the same as GetResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See GetResourcePolicy 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 *RedshiftServerless) GetResourcePolicyWithContext(ctx aws.Context, input *GetResourcePolicyInput, opts ...request.Option) (*GetResourcePolicyOutput, error) { + req, out := c.GetResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetSnapshot = "GetSnapshot" + +// GetSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the GetSnapshot 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 GetSnapshot for more information on using the GetSnapshot +// 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 GetSnapshotRequest method. +// req, resp := client.GetSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetSnapshot +func (c *RedshiftServerless) GetSnapshotRequest(input *GetSnapshotInput) (req *request.Request, output *GetSnapshotOutput) { + op := &request.Operation{ + Name: opGetSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetSnapshotInput{} + } + + output = &GetSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSnapshot API operation for Redshift Serverless. +// +// Returns information about a specific snapshot. +// +// 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 Redshift Serverless's +// API operation GetSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetSnapshot +func (c *RedshiftServerless) GetSnapshot(input *GetSnapshotInput) (*GetSnapshotOutput, error) { + req, out := c.GetSnapshotRequest(input) + return out, req.Send() +} + +// GetSnapshotWithContext is the same as GetSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See GetSnapshot 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 *RedshiftServerless) GetSnapshotWithContext(ctx aws.Context, input *GetSnapshotInput, opts ...request.Option) (*GetSnapshotOutput, error) { + req, out := c.GetSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetUsageLimit = "GetUsageLimit" + +// GetUsageLimitRequest generates a "aws/request.Request" representing the +// client's request for the GetUsageLimit 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 GetUsageLimit for more information on using the GetUsageLimit +// 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 GetUsageLimitRequest method. +// req, resp := client.GetUsageLimitRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetUsageLimit +func (c *RedshiftServerless) GetUsageLimitRequest(input *GetUsageLimitInput) (req *request.Request, output *GetUsageLimitOutput) { + op := &request.Operation{ + Name: opGetUsageLimit, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetUsageLimitInput{} + } + + output = &GetUsageLimitOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetUsageLimit API operation for Redshift Serverless. +// +// Returns information about a usage limit. +// +// 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 Redshift Serverless's +// API operation GetUsageLimit for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetUsageLimit +func (c *RedshiftServerless) GetUsageLimit(input *GetUsageLimitInput) (*GetUsageLimitOutput, error) { + req, out := c.GetUsageLimitRequest(input) + return out, req.Send() +} + +// GetUsageLimitWithContext is the same as GetUsageLimit with the addition of +// the ability to pass a context and additional request options. +// +// See GetUsageLimit 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 *RedshiftServerless) GetUsageLimitWithContext(ctx aws.Context, input *GetUsageLimitInput, opts ...request.Option) (*GetUsageLimitOutput, error) { + req, out := c.GetUsageLimitRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetWorkgroup = "GetWorkgroup" + +// GetWorkgroupRequest generates a "aws/request.Request" representing the +// client's request for the GetWorkgroup 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 GetWorkgroup for more information on using the GetWorkgroup +// 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 GetWorkgroupRequest method. +// req, resp := client.GetWorkgroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetWorkgroup +func (c *RedshiftServerless) GetWorkgroupRequest(input *GetWorkgroupInput) (req *request.Request, output *GetWorkgroupOutput) { + op := &request.Operation{ + Name: opGetWorkgroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetWorkgroupInput{} + } + + output = &GetWorkgroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetWorkgroup API operation for Redshift Serverless. +// +// Returns information about a specific workgroup. +// +// 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 Redshift Serverless's +// API operation GetWorkgroup for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/GetWorkgroup +func (c *RedshiftServerless) GetWorkgroup(input *GetWorkgroupInput) (*GetWorkgroupOutput, error) { + req, out := c.GetWorkgroupRequest(input) + return out, req.Send() +} + +// GetWorkgroupWithContext is the same as GetWorkgroup with the addition of +// the ability to pass a context and additional request options. +// +// See GetWorkgroup 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 *RedshiftServerless) GetWorkgroupWithContext(ctx aws.Context, input *GetWorkgroupInput, opts ...request.Option) (*GetWorkgroupOutput, error) { + req, out := c.GetWorkgroupRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListEndpointAccess = "ListEndpointAccess" + +// ListEndpointAccessRequest generates a "aws/request.Request" representing the +// client's request for the ListEndpointAccess 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 ListEndpointAccess for more information on using the ListEndpointAccess +// 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 ListEndpointAccessRequest method. +// req, resp := client.ListEndpointAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListEndpointAccess +func (c *RedshiftServerless) ListEndpointAccessRequest(input *ListEndpointAccessInput) (req *request.Request, output *ListEndpointAccessOutput) { + op := &request.Operation{ + Name: opListEndpointAccess, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListEndpointAccessInput{} + } + + output = &ListEndpointAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEndpointAccess API operation for Redshift Serverless. +// +// Returns an array of EndpointAccess objects and relevant information. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation ListEndpointAccess for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListEndpointAccess +func (c *RedshiftServerless) ListEndpointAccess(input *ListEndpointAccessInput) (*ListEndpointAccessOutput, error) { + req, out := c.ListEndpointAccessRequest(input) + return out, req.Send() +} + +// ListEndpointAccessWithContext is the same as ListEndpointAccess with the addition of +// the ability to pass a context and additional request options. +// +// See ListEndpointAccess 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 *RedshiftServerless) ListEndpointAccessWithContext(ctx aws.Context, input *ListEndpointAccessInput, opts ...request.Option) (*ListEndpointAccessOutput, error) { + req, out := c.ListEndpointAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEndpointAccessPages iterates over the pages of a ListEndpointAccess operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEndpointAccess 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 ListEndpointAccess operation. +// pageNum := 0 +// err := client.ListEndpointAccessPages(params, +// func(page *redshiftserverless.ListEndpointAccessOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListEndpointAccessPages(input *ListEndpointAccessInput, fn func(*ListEndpointAccessOutput, bool) bool) error { + return c.ListEndpointAccessPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEndpointAccessPagesWithContext same as ListEndpointAccessPages 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 *RedshiftServerless) ListEndpointAccessPagesWithContext(ctx aws.Context, input *ListEndpointAccessInput, fn func(*ListEndpointAccessOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEndpointAccessInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEndpointAccessRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEndpointAccessOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListNamespaces = "ListNamespaces" + +// ListNamespacesRequest generates a "aws/request.Request" representing the +// client's request for the ListNamespaces 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 ListNamespaces for more information on using the ListNamespaces +// 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 ListNamespacesRequest method. +// req, resp := client.ListNamespacesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListNamespaces +func (c *RedshiftServerless) ListNamespacesRequest(input *ListNamespacesInput) (req *request.Request, output *ListNamespacesOutput) { + op := &request.Operation{ + Name: opListNamespaces, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListNamespacesInput{} + } + + output = &ListNamespacesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListNamespaces API operation for Redshift Serverless. +// +// Returns information about a list of specified namespaces. +// +// 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 Redshift Serverless's +// API operation ListNamespaces for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListNamespaces +func (c *RedshiftServerless) ListNamespaces(input *ListNamespacesInput) (*ListNamespacesOutput, error) { + req, out := c.ListNamespacesRequest(input) + return out, req.Send() +} + +// ListNamespacesWithContext is the same as ListNamespaces with the addition of +// the ability to pass a context and additional request options. +// +// See ListNamespaces 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 *RedshiftServerless) ListNamespacesWithContext(ctx aws.Context, input *ListNamespacesInput, opts ...request.Option) (*ListNamespacesOutput, error) { + req, out := c.ListNamespacesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListNamespacesPages iterates over the pages of a ListNamespaces operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListNamespaces 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 ListNamespaces operation. +// pageNum := 0 +// err := client.ListNamespacesPages(params, +// func(page *redshiftserverless.ListNamespacesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListNamespacesPages(input *ListNamespacesInput, fn func(*ListNamespacesOutput, bool) bool) error { + return c.ListNamespacesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListNamespacesPagesWithContext same as ListNamespacesPages 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 *RedshiftServerless) ListNamespacesPagesWithContext(ctx aws.Context, input *ListNamespacesInput, fn func(*ListNamespacesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListNamespacesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListNamespacesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListNamespacesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListRecoveryPoints = "ListRecoveryPoints" + +// ListRecoveryPointsRequest generates a "aws/request.Request" representing the +// client's request for the ListRecoveryPoints 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 ListRecoveryPoints for more information on using the ListRecoveryPoints +// 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 ListRecoveryPointsRequest method. +// req, resp := client.ListRecoveryPointsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListRecoveryPoints +func (c *RedshiftServerless) ListRecoveryPointsRequest(input *ListRecoveryPointsInput) (req *request.Request, output *ListRecoveryPointsOutput) { + op := &request.Operation{ + Name: opListRecoveryPoints, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListRecoveryPointsInput{} + } + + output = &ListRecoveryPointsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListRecoveryPoints API operation for Redshift Serverless. +// +// Returns an array of recovery points. +// +// 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 Redshift Serverless's +// API operation ListRecoveryPoints for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListRecoveryPoints +func (c *RedshiftServerless) ListRecoveryPoints(input *ListRecoveryPointsInput) (*ListRecoveryPointsOutput, error) { + req, out := c.ListRecoveryPointsRequest(input) + return out, req.Send() +} + +// ListRecoveryPointsWithContext is the same as ListRecoveryPoints with the addition of +// the ability to pass a context and additional request options. +// +// See ListRecoveryPoints 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 *RedshiftServerless) ListRecoveryPointsWithContext(ctx aws.Context, input *ListRecoveryPointsInput, opts ...request.Option) (*ListRecoveryPointsOutput, error) { + req, out := c.ListRecoveryPointsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListRecoveryPointsPages iterates over the pages of a ListRecoveryPoints operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecoveryPoints 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 ListRecoveryPoints operation. +// pageNum := 0 +// err := client.ListRecoveryPointsPages(params, +// func(page *redshiftserverless.ListRecoveryPointsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListRecoveryPointsPages(input *ListRecoveryPointsInput, fn func(*ListRecoveryPointsOutput, bool) bool) error { + return c.ListRecoveryPointsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListRecoveryPointsPagesWithContext same as ListRecoveryPointsPages 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 *RedshiftServerless) ListRecoveryPointsPagesWithContext(ctx aws.Context, input *ListRecoveryPointsInput, fn func(*ListRecoveryPointsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecoveryPointsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecoveryPointsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecoveryPointsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSnapshots = "ListSnapshots" + +// ListSnapshotsRequest generates a "aws/request.Request" representing the +// client's request for the ListSnapshots 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 ListSnapshots for more information on using the ListSnapshots +// 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 ListSnapshotsRequest method. +// req, resp := client.ListSnapshotsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListSnapshots +func (c *RedshiftServerless) ListSnapshotsRequest(input *ListSnapshotsInput) (req *request.Request, output *ListSnapshotsOutput) { + op := &request.Operation{ + Name: opListSnapshots, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListSnapshotsInput{} + } + + output = &ListSnapshotsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListSnapshots API operation for Redshift Serverless. +// +// Returns a list of snapshots. +// +// 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 Redshift Serverless's +// API operation ListSnapshots for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListSnapshots +func (c *RedshiftServerless) ListSnapshots(input *ListSnapshotsInput) (*ListSnapshotsOutput, error) { + req, out := c.ListSnapshotsRequest(input) + return out, req.Send() +} + +// ListSnapshotsWithContext is the same as ListSnapshots with the addition of +// the ability to pass a context and additional request options. +// +// See ListSnapshots 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 *RedshiftServerless) ListSnapshotsWithContext(ctx aws.Context, input *ListSnapshotsInput, opts ...request.Option) (*ListSnapshotsOutput, error) { + req, out := c.ListSnapshotsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListSnapshotsPages iterates over the pages of a ListSnapshots operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListSnapshots 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 ListSnapshots operation. +// pageNum := 0 +// err := client.ListSnapshotsPages(params, +// func(page *redshiftserverless.ListSnapshotsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListSnapshotsPages(input *ListSnapshotsInput, fn func(*ListSnapshotsOutput, bool) bool) error { + return c.ListSnapshotsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListSnapshotsPagesWithContext same as ListSnapshotsPages 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 *RedshiftServerless) ListSnapshotsPagesWithContext(ctx aws.Context, input *ListSnapshotsInput, fn func(*ListSnapshotsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListSnapshotsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListSnapshotsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListSnapshotsOutput), !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/redshiftserverless-2021-04-21/ListTagsForResource +func (c *RedshiftServerless) 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 Redshift Serverless. +// +// Lists the tags assigned to a 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 Redshift Serverless's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListTagsForResource +func (c *RedshiftServerless) 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 *RedshiftServerless) 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 opListUsageLimits = "ListUsageLimits" + +// ListUsageLimitsRequest generates a "aws/request.Request" representing the +// client's request for the ListUsageLimits 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 ListUsageLimits for more information on using the ListUsageLimits +// 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 ListUsageLimitsRequest method. +// req, resp := client.ListUsageLimitsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListUsageLimits +func (c *RedshiftServerless) ListUsageLimitsRequest(input *ListUsageLimitsInput) (req *request.Request, output *ListUsageLimitsOutput) { + op := &request.Operation{ + Name: opListUsageLimits, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListUsageLimitsInput{} + } + + output = &ListUsageLimitsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListUsageLimits API operation for Redshift Serverless. +// +// Lists all usage limits within Amazon Redshift Serverless. +// +// 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 Redshift Serverless's +// API operation ListUsageLimits for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * InvalidPaginationException +// The provided pagination token is invalid. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListUsageLimits +func (c *RedshiftServerless) ListUsageLimits(input *ListUsageLimitsInput) (*ListUsageLimitsOutput, error) { + req, out := c.ListUsageLimitsRequest(input) + return out, req.Send() +} + +// ListUsageLimitsWithContext is the same as ListUsageLimits with the addition of +// the ability to pass a context and additional request options. +// +// See ListUsageLimits 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 *RedshiftServerless) ListUsageLimitsWithContext(ctx aws.Context, input *ListUsageLimitsInput, opts ...request.Option) (*ListUsageLimitsOutput, error) { + req, out := c.ListUsageLimitsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListUsageLimitsPages iterates over the pages of a ListUsageLimits operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListUsageLimits 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 ListUsageLimits operation. +// pageNum := 0 +// err := client.ListUsageLimitsPages(params, +// func(page *redshiftserverless.ListUsageLimitsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListUsageLimitsPages(input *ListUsageLimitsInput, fn func(*ListUsageLimitsOutput, bool) bool) error { + return c.ListUsageLimitsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListUsageLimitsPagesWithContext same as ListUsageLimitsPages 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 *RedshiftServerless) ListUsageLimitsPagesWithContext(ctx aws.Context, input *ListUsageLimitsInput, fn func(*ListUsageLimitsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListUsageLimitsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListUsageLimitsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListUsageLimitsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListWorkgroups = "ListWorkgroups" + +// ListWorkgroupsRequest generates a "aws/request.Request" representing the +// client's request for the ListWorkgroups 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 ListWorkgroups for more information on using the ListWorkgroups +// 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 ListWorkgroupsRequest method. +// req, resp := client.ListWorkgroupsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListWorkgroups +func (c *RedshiftServerless) ListWorkgroupsRequest(input *ListWorkgroupsInput) (req *request.Request, output *ListWorkgroupsOutput) { + op := &request.Operation{ + Name: opListWorkgroups, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListWorkgroupsInput{} + } + + output = &ListWorkgroupsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListWorkgroups API operation for Redshift Serverless. +// +// Returns information about a list of specified workgroups. +// +// 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 Redshift Serverless's +// API operation ListWorkgroups for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/ListWorkgroups +func (c *RedshiftServerless) ListWorkgroups(input *ListWorkgroupsInput) (*ListWorkgroupsOutput, error) { + req, out := c.ListWorkgroupsRequest(input) + return out, req.Send() +} + +// ListWorkgroupsWithContext is the same as ListWorkgroups with the addition of +// the ability to pass a context and additional request options. +// +// See ListWorkgroups 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 *RedshiftServerless) ListWorkgroupsWithContext(ctx aws.Context, input *ListWorkgroupsInput, opts ...request.Option) (*ListWorkgroupsOutput, error) { + req, out := c.ListWorkgroupsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListWorkgroupsPages iterates over the pages of a ListWorkgroups operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListWorkgroups 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 ListWorkgroups operation. +// pageNum := 0 +// err := client.ListWorkgroupsPages(params, +// func(page *redshiftserverless.ListWorkgroupsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *RedshiftServerless) ListWorkgroupsPages(input *ListWorkgroupsInput, fn func(*ListWorkgroupsOutput, bool) bool) error { + return c.ListWorkgroupsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListWorkgroupsPagesWithContext same as ListWorkgroupsPages 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 *RedshiftServerless) ListWorkgroupsPagesWithContext(ctx aws.Context, input *ListWorkgroupsInput, fn func(*ListWorkgroupsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListWorkgroupsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListWorkgroupsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListWorkgroupsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opPutResourcePolicy = "PutResourcePolicy" + +// PutResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutResourcePolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See PutResourcePolicy for more information on using the PutResourcePolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the PutResourcePolicyRequest method. +// req, resp := client.PutResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/PutResourcePolicy +func (c *RedshiftServerless) PutResourcePolicyRequest(input *PutResourcePolicyInput) (req *request.Request, output *PutResourcePolicyOutput) { + op := &request.Operation{ + Name: opPutResourcePolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutResourcePolicyInput{} + } + + output = &PutResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutResourcePolicy API operation for Redshift Serverless. +// +// Creates or updates a resource policy. Currently, you can use policies to +// share snapshots across Amazon Web Services accounts. +// +// 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 Redshift Serverless's +// API operation PutResourcePolicy for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/PutResourcePolicy +func (c *RedshiftServerless) PutResourcePolicy(input *PutResourcePolicyInput) (*PutResourcePolicyOutput, error) { + req, out := c.PutResourcePolicyRequest(input) + return out, req.Send() +} + +// PutResourcePolicyWithContext is the same as PutResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutResourcePolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *RedshiftServerless) PutResourcePolicyWithContext(ctx aws.Context, input *PutResourcePolicyInput, opts ...request.Option) (*PutResourcePolicyOutput, error) { + req, out := c.PutResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRestoreFromRecoveryPoint = "RestoreFromRecoveryPoint" + +// RestoreFromRecoveryPointRequest generates a "aws/request.Request" representing the +// client's request for the RestoreFromRecoveryPoint 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 RestoreFromRecoveryPoint for more information on using the RestoreFromRecoveryPoint +// 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 RestoreFromRecoveryPointRequest method. +// req, resp := client.RestoreFromRecoveryPointRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/RestoreFromRecoveryPoint +func (c *RedshiftServerless) RestoreFromRecoveryPointRequest(input *RestoreFromRecoveryPointInput) (req *request.Request, output *RestoreFromRecoveryPointOutput) { + op := &request.Operation{ + Name: opRestoreFromRecoveryPoint, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RestoreFromRecoveryPointInput{} + } + + output = &RestoreFromRecoveryPointOutput{} + req = c.newRequest(op, input, output) + return +} + +// RestoreFromRecoveryPoint API operation for Redshift Serverless. +// +// Restore the data from a recovery point. +// +// 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 Redshift Serverless's +// API operation RestoreFromRecoveryPoint for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/RestoreFromRecoveryPoint +func (c *RedshiftServerless) RestoreFromRecoveryPoint(input *RestoreFromRecoveryPointInput) (*RestoreFromRecoveryPointOutput, error) { + req, out := c.RestoreFromRecoveryPointRequest(input) + return out, req.Send() +} + +// RestoreFromRecoveryPointWithContext is the same as RestoreFromRecoveryPoint with the addition of +// the ability to pass a context and additional request options. +// +// See RestoreFromRecoveryPoint 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 *RedshiftServerless) RestoreFromRecoveryPointWithContext(ctx aws.Context, input *RestoreFromRecoveryPointInput, opts ...request.Option) (*RestoreFromRecoveryPointOutput, error) { + req, out := c.RestoreFromRecoveryPointRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRestoreFromSnapshot = "RestoreFromSnapshot" + +// RestoreFromSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the RestoreFromSnapshot 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 RestoreFromSnapshot for more information on using the RestoreFromSnapshot +// 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 RestoreFromSnapshotRequest method. +// req, resp := client.RestoreFromSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/RestoreFromSnapshot +func (c *RedshiftServerless) RestoreFromSnapshotRequest(input *RestoreFromSnapshotInput) (req *request.Request, output *RestoreFromSnapshotOutput) { + op := &request.Operation{ + Name: opRestoreFromSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RestoreFromSnapshotInput{} + } + + output = &RestoreFromSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// RestoreFromSnapshot API operation for Redshift Serverless. +// +// Restores a namespace from a snapshot. +// +// 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 Redshift Serverless's +// API operation RestoreFromSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ServiceQuotaExceededException +// The service limit was exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/RestoreFromSnapshot +func (c *RedshiftServerless) RestoreFromSnapshot(input *RestoreFromSnapshotInput) (*RestoreFromSnapshotOutput, error) { + req, out := c.RestoreFromSnapshotRequest(input) + return out, req.Send() +} + +// RestoreFromSnapshotWithContext is the same as RestoreFromSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See RestoreFromSnapshot 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 *RedshiftServerless) RestoreFromSnapshotWithContext(ctx aws.Context, input *RestoreFromSnapshotInput, opts ...request.Option) (*RestoreFromSnapshotOutput, error) { + req, out := c.RestoreFromSnapshotRequest(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/redshiftserverless-2021-04-21/TagResource +func (c *RedshiftServerless) 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 Redshift Serverless. +// +// Assigns one or more tags to a 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 Redshift Serverless's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * TooManyTagsException +// The request exceeded the number of tags allowed for a resource. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/TagResource +func (c *RedshiftServerless) 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 *RedshiftServerless) 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/redshiftserverless-2021-04-21/UntagResource +func (c *RedshiftServerless) 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 Redshift Serverless. +// +// Removes a tag or set of tags from a 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 Redshift Serverless's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UntagResource +func (c *RedshiftServerless) 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 *RedshiftServerless) 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 opUpdateEndpointAccess = "UpdateEndpointAccess" + +// UpdateEndpointAccessRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEndpointAccess 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 UpdateEndpointAccess for more information on using the UpdateEndpointAccess +// 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 UpdateEndpointAccessRequest method. +// req, resp := client.UpdateEndpointAccessRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateEndpointAccess +func (c *RedshiftServerless) UpdateEndpointAccessRequest(input *UpdateEndpointAccessInput) (req *request.Request, output *UpdateEndpointAccessOutput) { + op := &request.Operation{ + Name: opUpdateEndpointAccess, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateEndpointAccessInput{} + } + + output = &UpdateEndpointAccessOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEndpointAccess API operation for Redshift Serverless. +// +// Updates an Amazon Redshift Serverless managed endpoint. +// +// 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 Redshift Serverless's +// API operation UpdateEndpointAccess for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateEndpointAccess +func (c *RedshiftServerless) UpdateEndpointAccess(input *UpdateEndpointAccessInput) (*UpdateEndpointAccessOutput, error) { + req, out := c.UpdateEndpointAccessRequest(input) + return out, req.Send() +} + +// UpdateEndpointAccessWithContext is the same as UpdateEndpointAccess with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEndpointAccess 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 *RedshiftServerless) UpdateEndpointAccessWithContext(ctx aws.Context, input *UpdateEndpointAccessInput, opts ...request.Option) (*UpdateEndpointAccessOutput, error) { + req, out := c.UpdateEndpointAccessRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateNamespace = "UpdateNamespace" + +// UpdateNamespaceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateNamespace 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 UpdateNamespace for more information on using the UpdateNamespace +// 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 UpdateNamespaceRequest method. +// req, resp := client.UpdateNamespaceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateNamespace +func (c *RedshiftServerless) UpdateNamespaceRequest(input *UpdateNamespaceInput) (req *request.Request, output *UpdateNamespaceOutput) { + op := &request.Operation{ + Name: opUpdateNamespace, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateNamespaceInput{} + } + + output = &UpdateNamespaceOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateNamespace API operation for Redshift Serverless. +// +// Updates a namespace with the specified settings. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation UpdateNamespace for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateNamespace +func (c *RedshiftServerless) UpdateNamespace(input *UpdateNamespaceInput) (*UpdateNamespaceOutput, error) { + req, out := c.UpdateNamespaceRequest(input) + return out, req.Send() +} + +// UpdateNamespaceWithContext is the same as UpdateNamespace with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateNamespace 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 *RedshiftServerless) UpdateNamespaceWithContext(ctx aws.Context, input *UpdateNamespaceInput, opts ...request.Option) (*UpdateNamespaceOutput, error) { + req, out := c.UpdateNamespaceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSnapshot = "UpdateSnapshot" + +// UpdateSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSnapshot 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 UpdateSnapshot for more information on using the UpdateSnapshot +// 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 UpdateSnapshotRequest method. +// req, resp := client.UpdateSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateSnapshot +func (c *RedshiftServerless) UpdateSnapshotRequest(input *UpdateSnapshotInput) (req *request.Request, output *UpdateSnapshotOutput) { + op := &request.Operation{ + Name: opUpdateSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSnapshotInput{} + } + + output = &UpdateSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSnapshot API operation for Redshift Serverless. +// +// Updates a snapshot. +// +// 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 Redshift Serverless's +// API operation UpdateSnapshot for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateSnapshot +func (c *RedshiftServerless) UpdateSnapshot(input *UpdateSnapshotInput) (*UpdateSnapshotOutput, error) { + req, out := c.UpdateSnapshotRequest(input) + return out, req.Send() +} + +// UpdateSnapshotWithContext is the same as UpdateSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSnapshot 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 *RedshiftServerless) UpdateSnapshotWithContext(ctx aws.Context, input *UpdateSnapshotInput, opts ...request.Option) (*UpdateSnapshotOutput, error) { + req, out := c.UpdateSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateUsageLimit = "UpdateUsageLimit" + +// UpdateUsageLimitRequest generates a "aws/request.Request" representing the +// client's request for the UpdateUsageLimit 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 UpdateUsageLimit for more information on using the UpdateUsageLimit +// 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 UpdateUsageLimitRequest method. +// req, resp := client.UpdateUsageLimitRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateUsageLimit +func (c *RedshiftServerless) UpdateUsageLimitRequest(input *UpdateUsageLimitInput) (req *request.Request, output *UpdateUsageLimitOutput) { + op := &request.Operation{ + Name: opUpdateUsageLimit, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateUsageLimitInput{} + } + + output = &UpdateUsageLimitOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateUsageLimit API operation for Redshift Serverless. +// +// Update a usage limit in Amazon Redshift Serverless. You can't update the +// usage type or period of a usage limit. +// +// 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 Redshift Serverless's +// API operation UpdateUsageLimit for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateUsageLimit +func (c *RedshiftServerless) UpdateUsageLimit(input *UpdateUsageLimitInput) (*UpdateUsageLimitOutput, error) { + req, out := c.UpdateUsageLimitRequest(input) + return out, req.Send() +} + +// UpdateUsageLimitWithContext is the same as UpdateUsageLimit with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateUsageLimit 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 *RedshiftServerless) UpdateUsageLimitWithContext(ctx aws.Context, input *UpdateUsageLimitInput, opts ...request.Option) (*UpdateUsageLimitOutput, error) { + req, out := c.UpdateUsageLimitRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateWorkgroup = "UpdateWorkgroup" + +// UpdateWorkgroupRequest generates a "aws/request.Request" representing the +// client's request for the UpdateWorkgroup 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 UpdateWorkgroup for more information on using the UpdateWorkgroup +// 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 UpdateWorkgroupRequest method. +// req, resp := client.UpdateWorkgroupRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateWorkgroup +func (c *RedshiftServerless) UpdateWorkgroupRequest(input *UpdateWorkgroupInput) (req *request.Request, output *UpdateWorkgroupOutput) { + op := &request.Operation{ + Name: opUpdateWorkgroup, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateWorkgroupInput{} + } + + output = &UpdateWorkgroupOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateWorkgroup API operation for Redshift Serverless. +// +// Updates a workgroup with the specified configuration settings. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Redshift Serverless's +// API operation UpdateWorkgroup for usage and error information. +// +// Returned Error Types: +// * InternalServerException +// The request processing has failed because of an unknown error, exception +// or failure. +// +// * InsufficientCapacityException +// There is an insufficient capacity to perform the action. +// +// * ResourceNotFoundException +// The resource could not be found. +// +// * ConflictException +// The submitted action has conflicts. +// +// * ValidationException +// The input failed to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21/UpdateWorkgroup +func (c *RedshiftServerless) UpdateWorkgroup(input *UpdateWorkgroupInput) (*UpdateWorkgroupOutput, error) { + req, out := c.UpdateWorkgroupRequest(input) + return out, req.Send() +} + +// UpdateWorkgroupWithContext is the same as UpdateWorkgroup with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateWorkgroup 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 *RedshiftServerless) UpdateWorkgroupWithContext(ctx aws.Context, input *UpdateWorkgroupInput, opts ...request.Option) (*UpdateWorkgroupOutput, error) { + req, out := c.UpdateWorkgroupRequest(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:"-"` + + Code_ *string `locationName:"code" type:"string"` + + 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\n%s", s.Code(), s.Message(), s.String()) +} + +// 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 +} + +// An array of key-value pairs to set for advanced control over Amazon Redshift +// Serverless. +type ConfigParameter struct { + _ struct{} `type:"structure"` + + // The key of the parameter. The options are datestyle, enable_user_activity_logging, + // query_group, search_path, and max_query_execution_time. + ParameterKey *string `locationName:"parameterKey" type:"string"` + + // The value of the parameter to set. + ParameterValue *string `locationName:"parameterValue" 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 ConfigParameter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConfigParameter) GoString() string { + return s.String() +} + +// SetParameterKey sets the ParameterKey field's value. +func (s *ConfigParameter) SetParameterKey(v string) *ConfigParameter { + s.ParameterKey = &v + return s +} + +// SetParameterValue sets the ParameterValue field's value. +func (s *ConfigParameter) SetParameterValue(v string) *ConfigParameter { + s.ParameterValue = &v + return s +} + +// The submitted action has conflicts. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ConvertRecoveryPointToSnapshotInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the recovery point. + // + // RecoveryPointId is a required field + RecoveryPointId *string `locationName:"recoveryPointId" type:"string" required:"true"` + + // How long to retain the snapshot. + RetentionPeriod *int64 `locationName:"retentionPeriod" type:"integer"` + + // The name of the snapshot. + // + // SnapshotName is a required field + SnapshotName *string `locationName:"snapshotName" 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 ConvertRecoveryPointToSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConvertRecoveryPointToSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConvertRecoveryPointToSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConvertRecoveryPointToSnapshotInput"} + if s.RecoveryPointId == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointId")) + } + if s.SnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *ConvertRecoveryPointToSnapshotInput) SetRecoveryPointId(v string) *ConvertRecoveryPointToSnapshotInput { + s.RecoveryPointId = &v + return s +} + +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *ConvertRecoveryPointToSnapshotInput) SetRetentionPeriod(v int64) *ConvertRecoveryPointToSnapshotInput { + s.RetentionPeriod = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *ConvertRecoveryPointToSnapshotInput) SetSnapshotName(v string) *ConvertRecoveryPointToSnapshotInput { + s.SnapshotName = &v + return s +} + +type ConvertRecoveryPointToSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The snapshot converted from the recovery point. + Snapshot *Snapshot `locationName:"snapshot" 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 ConvertRecoveryPointToSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConvertRecoveryPointToSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *ConvertRecoveryPointToSnapshotOutput) SetSnapshot(v *Snapshot) *ConvertRecoveryPointToSnapshotOutput { + s.Snapshot = v + return s +} + +type CreateEndpointAccessInput struct { + _ struct{} `type:"structure"` + + // The name of the VPC endpoint. An endpoint name must contain 1-30 characters. + // Valid characters are A-Z, a-z, 0-9, and hyphen(-). The first character must + // be a letter. The name can't contain two consecutive hyphens or end with a + // hyphen. + // + // EndpointName is a required field + EndpointName *string `locationName:"endpointName" type:"string" required:"true"` + + // The unique identifers of subnets from which Amazon Redshift Serverless chooses + // one to deploy a VPC endpoint. + // + // SubnetIds is a required field + SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"` + + // The unique identifiers of the security group that defines the ports, protocols, + // and sources for inbound traffic that you are authorizing into your endpoint. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list"` + + // The name of the workgroup to associate with the VPC endpoint. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 CreateEndpointAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEndpointAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateEndpointAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateEndpointAccessInput"} + if s.EndpointName == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointName")) + } + if s.SubnetIds == nil { + invalidParams.Add(request.NewErrParamRequired("SubnetIds")) + } + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointName sets the EndpointName field's value. +func (s *CreateEndpointAccessInput) SetEndpointName(v string) *CreateEndpointAccessInput { + s.EndpointName = &v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *CreateEndpointAccessInput) SetSubnetIds(v []*string) *CreateEndpointAccessInput { + s.SubnetIds = v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *CreateEndpointAccessInput) SetVpcSecurityGroupIds(v []*string) *CreateEndpointAccessInput { + s.VpcSecurityGroupIds = v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *CreateEndpointAccessInput) SetWorkgroupName(v string) *CreateEndpointAccessInput { + s.WorkgroupName = &v + return s +} + +type CreateEndpointAccessOutput struct { + _ struct{} `type:"structure"` + + // The created VPC endpoint. + Endpoint *EndpointAccess `locationName:"endpoint" 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 CreateEndpointAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateEndpointAccessOutput) GoString() string { + return s.String() +} + +// SetEndpoint sets the Endpoint field's value. +func (s *CreateEndpointAccessOutput) SetEndpoint(v *EndpointAccess) *CreateEndpointAccessOutput { + s.Endpoint = v + return s +} + +type CreateNamespaceInput struct { + _ struct{} `type:"structure"` + + // The password of the administrator for the first database created in the namespace. + // + // AdminUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateNamespaceInput's + // String and GoString methods. + AdminUserPassword *string `locationName:"adminUserPassword" type:"string" sensitive:"true"` + + // The username of the administrator for the first database created in the namespace. + // + // AdminUsername is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by CreateNamespaceInput's + // String and GoString methods. + AdminUsername *string `locationName:"adminUsername" type:"string" sensitive:"true"` + + // The name of the first database created in the namespace. + DbName *string `locationName:"dbName" type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role to set as a default in the + // namespace. + DefaultIamRoleArn *string `locationName:"defaultIamRoleArn" type:"string"` + + // A list of IAM roles to associate with the namespace. + IamRoles []*string `locationName:"iamRoles" type:"list"` + + // The ID of the Amazon Web Services Key Management Service key used to encrypt + // your data. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The types of logs the namespace can export. Available export types are userlog, + // connectionlog, and useractivitylog. + LogExports []*string `locationName:"logExports" type:"list" enum:"LogExport"` + + // The name of the namespace. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // A list of tag instances. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateNamespaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateNamespaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateNamespaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateNamespaceInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdminUserPassword sets the AdminUserPassword field's value. +func (s *CreateNamespaceInput) SetAdminUserPassword(v string) *CreateNamespaceInput { + s.AdminUserPassword = &v + return s +} + +// SetAdminUsername sets the AdminUsername field's value. +func (s *CreateNamespaceInput) SetAdminUsername(v string) *CreateNamespaceInput { + s.AdminUsername = &v + return s +} + +// SetDbName sets the DbName field's value. +func (s *CreateNamespaceInput) SetDbName(v string) *CreateNamespaceInput { + s.DbName = &v + return s +} + +// SetDefaultIamRoleArn sets the DefaultIamRoleArn field's value. +func (s *CreateNamespaceInput) SetDefaultIamRoleArn(v string) *CreateNamespaceInput { + s.DefaultIamRoleArn = &v + return s +} + +// SetIamRoles sets the IamRoles field's value. +func (s *CreateNamespaceInput) SetIamRoles(v []*string) *CreateNamespaceInput { + s.IamRoles = v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateNamespaceInput) SetKmsKeyId(v string) *CreateNamespaceInput { + s.KmsKeyId = &v + return s +} + +// SetLogExports sets the LogExports field's value. +func (s *CreateNamespaceInput) SetLogExports(v []*string) *CreateNamespaceInput { + s.LogExports = v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateNamespaceInput) SetNamespaceName(v string) *CreateNamespaceInput { + s.NamespaceName = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateNamespaceInput) SetTags(v []*Tag) *CreateNamespaceInput { + s.Tags = v + return s +} + +type CreateNamespaceOutput struct { + _ struct{} `type:"structure"` + + // The created namespace object. + Namespace *Namespace `locationName:"namespace" 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 CreateNamespaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateNamespaceOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *CreateNamespaceOutput) SetNamespace(v *Namespace) *CreateNamespaceOutput { + s.Namespace = v + return s +} + +type CreateSnapshotInput struct { + _ struct{} `type:"structure"` + + // The namespace to create a snapshot for. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" type:"string" required:"true"` + + // How long to retain the created snapshot. + RetentionPeriod *int64 `locationName:"retentionPeriod" type:"integer"` + + // The name of the snapshot. + // + // SnapshotName is a required field + SnapshotName *string `locationName:"snapshotName" 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 CreateSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateSnapshotInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.SnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateSnapshotInput) SetNamespaceName(v string) *CreateSnapshotInput { + s.NamespaceName = &v + return s +} + +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *CreateSnapshotInput) SetRetentionPeriod(v int64) *CreateSnapshotInput { + s.RetentionPeriod = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *CreateSnapshotInput) SetSnapshotName(v string) *CreateSnapshotInput { + s.SnapshotName = &v + return s +} + +type CreateSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The created snapshot object. + Snapshot *Snapshot `locationName:"snapshot" 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 CreateSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *CreateSnapshotOutput) SetSnapshot(v *Snapshot) *CreateSnapshotOutput { + s.Snapshot = v + return s +} + +type CreateUsageLimitInput struct { + _ struct{} `type:"structure"` + + // The limit amount. If time-based, this amount is in Redshift Processing Units + // (RPU) consumed per hour. If data-based, this amount is in terabytes (TB) + // of data transferred between Regions in cross-account sharing. The value must + // be a positive number. + // + // Amount is a required field + Amount *int64 `locationName:"amount" type:"long" required:"true"` + + // The action that Amazon Redshift Serverless takes when the limit is reached. + // The default is log. + BreachAction *string `locationName:"breachAction" type:"string" enum:"UsageLimitBreachAction"` + + // The time period that the amount applies to. A weekly period begins on Sunday. + // The default is monthly. + Period *string `locationName:"period" type:"string" enum:"UsageLimitPeriod"` + + // The Amazon Resource Name (ARN) of the Amazon Redshift Serverless resource + // to create the usage limit for. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` + + // The type of Amazon Redshift Serverless usage to create a usage limit for. + // + // UsageType is a required field + UsageType *string `locationName:"usageType" type:"string" required:"true" enum:"UsageLimitUsageType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUsageLimitInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUsageLimitInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateUsageLimitInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateUsageLimitInput"} + if s.Amount == nil { + invalidParams.Add(request.NewErrParamRequired("Amount")) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.UsageType == nil { + invalidParams.Add(request.NewErrParamRequired("UsageType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmount sets the Amount field's value. +func (s *CreateUsageLimitInput) SetAmount(v int64) *CreateUsageLimitInput { + s.Amount = &v + return s +} + +// SetBreachAction sets the BreachAction field's value. +func (s *CreateUsageLimitInput) SetBreachAction(v string) *CreateUsageLimitInput { + s.BreachAction = &v + return s +} + +// SetPeriod sets the Period field's value. +func (s *CreateUsageLimitInput) SetPeriod(v string) *CreateUsageLimitInput { + s.Period = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *CreateUsageLimitInput) SetResourceArn(v string) *CreateUsageLimitInput { + s.ResourceArn = &v + return s +} + +// SetUsageType sets the UsageType field's value. +func (s *CreateUsageLimitInput) SetUsageType(v string) *CreateUsageLimitInput { + s.UsageType = &v + return s +} + +type CreateUsageLimitOutput struct { + _ struct{} `type:"structure"` + + // The returned usage limit object. + UsageLimit *UsageLimit `locationName:"usageLimit" 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 CreateUsageLimitOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateUsageLimitOutput) GoString() string { + return s.String() +} + +// SetUsageLimit sets the UsageLimit field's value. +func (s *CreateUsageLimitOutput) SetUsageLimit(v *UsageLimit) *CreateUsageLimitOutput { + s.UsageLimit = v + return s +} + +type CreateWorkgroupInput struct { + _ struct{} `type:"structure"` + + // The base data warehouse capacity of the workgroup in Redshift Processing + // Units (RPUs). + BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` + + // An array of parameters to set for more control over a serverless database. + // The options are datestyle, enable_user_activity_logging, query_group, search_path, + // and max_query_execution_time. + ConfigParameters []*ConfigParameter `locationName:"configParameters" type:"list"` + + // The value that specifies whether to turn on enhanced virtual private cloud + // (VPC) routing, which forces Amazon Redshift Serverless to route traffic through + // your VPC instead of over the internet. + EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + + // The name of the namespace to associate with the workgroup. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // A value that specifies whether the workgroup can be accessed from a public + // network. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // An array of security group IDs to associate with the workgroup. + SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` + + // An array of VPC subnet IDs to associate with the workgroup. + SubnetIds []*string `locationName:"subnetIds" type:"list"` + + // A array of tag instances. + Tags []*Tag `locationName:"tags" type:"list"` + + // The name of the created workgroup. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 CreateWorkgroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkgroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateWorkgroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateWorkgroupInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaseCapacity sets the BaseCapacity field's value. +func (s *CreateWorkgroupInput) SetBaseCapacity(v int64) *CreateWorkgroupInput { + s.BaseCapacity = &v + return s +} + +// SetConfigParameters sets the ConfigParameters field's value. +func (s *CreateWorkgroupInput) SetConfigParameters(v []*ConfigParameter) *CreateWorkgroupInput { + s.ConfigParameters = v + return s +} + +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *CreateWorkgroupInput) SetEnhancedVpcRouting(v bool) *CreateWorkgroupInput { + s.EnhancedVpcRouting = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *CreateWorkgroupInput) SetNamespaceName(v string) *CreateWorkgroupInput { + s.NamespaceName = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *CreateWorkgroupInput) SetPubliclyAccessible(v bool) *CreateWorkgroupInput { + s.PubliclyAccessible = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *CreateWorkgroupInput) SetSecurityGroupIds(v []*string) *CreateWorkgroupInput { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *CreateWorkgroupInput) SetSubnetIds(v []*string) *CreateWorkgroupInput { + s.SubnetIds = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateWorkgroupInput) SetTags(v []*Tag) *CreateWorkgroupInput { + s.Tags = v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *CreateWorkgroupInput) SetWorkgroupName(v string) *CreateWorkgroupInput { + s.WorkgroupName = &v + return s +} + +type CreateWorkgroupOutput struct { + _ struct{} `type:"structure"` + + // The created workgroup object. + Workgroup *Workgroup `locationName:"workgroup" 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 CreateWorkgroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateWorkgroupOutput) GoString() string { + return s.String() +} + +// SetWorkgroup sets the Workgroup field's value. +func (s *CreateWorkgroupOutput) SetWorkgroup(v *Workgroup) *CreateWorkgroupOutput { + s.Workgroup = v + return s +} + +type DeleteEndpointAccessInput struct { + _ struct{} `type:"structure"` + + // The name of the VPC endpoint to delete. + // + // EndpointName is a required field + EndpointName *string `locationName:"endpointName" 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 DeleteEndpointAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEndpointAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteEndpointAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteEndpointAccessInput"} + if s.EndpointName == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointName sets the EndpointName field's value. +func (s *DeleteEndpointAccessInput) SetEndpointName(v string) *DeleteEndpointAccessInput { + s.EndpointName = &v + return s +} + +type DeleteEndpointAccessOutput struct { + _ struct{} `type:"structure"` + + // The deleted VPC endpoint. + Endpoint *EndpointAccess `locationName:"endpoint" 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 DeleteEndpointAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteEndpointAccessOutput) GoString() string { + return s.String() +} + +// SetEndpoint sets the Endpoint field's value. +func (s *DeleteEndpointAccessOutput) SetEndpoint(v *EndpointAccess) *DeleteEndpointAccessOutput { + s.Endpoint = v + return s +} + +type DeleteNamespaceInput struct { + _ struct{} `type:"structure"` + + // The name of the snapshot to be created before the namespace is deleted. + FinalSnapshotName *string `locationName:"finalSnapshotName" type:"string"` + + // How long to retain the final snapshot. + FinalSnapshotRetentionPeriod *int64 `locationName:"finalSnapshotRetentionPeriod" type:"integer"` + + // The name of the namespace to delete. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" 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 DeleteNamespaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteNamespaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteNamespaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteNamespaceInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFinalSnapshotName sets the FinalSnapshotName field's value. +func (s *DeleteNamespaceInput) SetFinalSnapshotName(v string) *DeleteNamespaceInput { + s.FinalSnapshotName = &v + return s +} + +// SetFinalSnapshotRetentionPeriod sets the FinalSnapshotRetentionPeriod field's value. +func (s *DeleteNamespaceInput) SetFinalSnapshotRetentionPeriod(v int64) *DeleteNamespaceInput { + s.FinalSnapshotRetentionPeriod = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *DeleteNamespaceInput) SetNamespaceName(v string) *DeleteNamespaceInput { + s.NamespaceName = &v + return s +} + +type DeleteNamespaceOutput struct { + _ struct{} `type:"structure"` + + // The deleted namespace object. + // + // Namespace is a required field + Namespace *Namespace `locationName:"namespace" 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 DeleteNamespaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteNamespaceOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *DeleteNamespaceOutput) SetNamespace(v *Namespace) *DeleteNamespaceOutput { + s.Namespace = v + return s +} + +type DeleteResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the policy to delete. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *DeleteResourcePolicyInput) SetResourceArn(v string) *DeleteResourcePolicyInput { + s.ResourceArn = &v + return s +} + +type DeleteResourcePolicyOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteResourcePolicyOutput) GoString() string { + return s.String() +} + +type DeleteSnapshotInput struct { + _ struct{} `type:"structure"` + + // The name of the snapshot to be deleted. + // + // SnapshotName is a required field + SnapshotName *string `locationName:"snapshotName" 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 DeleteSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteSnapshotInput"} + if s.SnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *DeleteSnapshotInput) SetSnapshotName(v string) *DeleteSnapshotInput { + s.SnapshotName = &v + return s +} + +type DeleteSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The deleted snapshot object. + Snapshot *Snapshot `locationName:"snapshot" 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 DeleteSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *DeleteSnapshotOutput) SetSnapshot(v *Snapshot) *DeleteSnapshotOutput { + s.Snapshot = v + return s +} + +type DeleteUsageLimitInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the usage limit to delete. + // + // UsageLimitId is a required field + UsageLimitId *string `locationName:"usageLimitId" 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 DeleteUsageLimitInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteUsageLimitInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteUsageLimitInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteUsageLimitInput"} + if s.UsageLimitId == nil { + invalidParams.Add(request.NewErrParamRequired("UsageLimitId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetUsageLimitId sets the UsageLimitId field's value. +func (s *DeleteUsageLimitInput) SetUsageLimitId(v string) *DeleteUsageLimitInput { + s.UsageLimitId = &v + return s +} + +type DeleteUsageLimitOutput struct { + _ struct{} `type:"structure"` + + // The deleted usage limit object. + UsageLimit *UsageLimit `locationName:"usageLimit" 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 DeleteUsageLimitOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteUsageLimitOutput) GoString() string { + return s.String() +} + +// SetUsageLimit sets the UsageLimit field's value. +func (s *DeleteUsageLimitOutput) SetUsageLimit(v *UsageLimit) *DeleteUsageLimitOutput { + s.UsageLimit = v + return s +} + +type DeleteWorkgroupInput struct { + _ struct{} `type:"structure"` + + // The name of the workgroup to be deleted. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 DeleteWorkgroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteWorkgroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteWorkgroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteWorkgroupInput"} + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *DeleteWorkgroupInput) SetWorkgroupName(v string) *DeleteWorkgroupInput { + s.WorkgroupName = &v + return s +} + +type DeleteWorkgroupOutput struct { + _ struct{} `type:"structure"` + + // The deleted workgroup object. + // + // Workgroup is a required field + Workgroup *Workgroup `locationName:"workgroup" 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 DeleteWorkgroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteWorkgroupOutput) GoString() string { + return s.String() +} + +// SetWorkgroup sets the Workgroup field's value. +func (s *DeleteWorkgroupOutput) SetWorkgroup(v *Workgroup) *DeleteWorkgroupOutput { + s.Workgroup = v + return s +} + +// The VPC endpoint object. +type Endpoint struct { + _ struct{} `type:"structure"` + + // The DNS address of the VPC endpoint. + Address *string `locationName:"address" type:"string"` + + // The port that Amazon Redshift Serverless listens on. + Port *int64 `locationName:"port" type:"integer"` + + // An array of VpcEndpoint objects. + VpcEndpoints []*VpcEndpoint `locationName:"vpcEndpoints" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Endpoint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Endpoint) GoString() string { + return s.String() +} + +// SetAddress sets the Address field's value. +func (s *Endpoint) SetAddress(v string) *Endpoint { + s.Address = &v + return s +} + +// SetPort sets the Port field's value. +func (s *Endpoint) SetPort(v int64) *Endpoint { + s.Port = &v + return s +} + +// SetVpcEndpoints sets the VpcEndpoints field's value. +func (s *Endpoint) SetVpcEndpoints(v []*VpcEndpoint) *Endpoint { + s.VpcEndpoints = v + return s +} + +// Information about an Amazon Redshift Serverless VPC endpoint. +type EndpointAccess struct { + _ struct{} `type:"structure"` + + // The DNS address of the endpoint. + Address *string `locationName:"address" type:"string"` + + // The Amazon Resource Name (ARN) of the VPC endpoint. + EndpointArn *string `locationName:"endpointArn" type:"string"` + + // The time that the endpoint was created. + EndpointCreateTime *time.Time `locationName:"endpointCreateTime" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the VPC endpoint. + EndpointName *string `locationName:"endpointName" type:"string"` + + // The status of the VPC endpoint. + EndpointStatus *string `locationName:"endpointStatus" type:"string"` + + // The port number on which Amazon Redshift Serverless accepts incoming connections. + Port *int64 `locationName:"port" type:"integer"` + + // The unique identifier of subnets where Amazon Redshift Serverless choose + // to deploy the VPC endpoint. + SubnetIds []*string `locationName:"subnetIds" type:"list"` + + // The connection endpoint for connecting to Amazon Redshift Serverless. + VpcEndpoint *VpcEndpoint `locationName:"vpcEndpoint" type:"structure"` + + // The security groups associated with the endpoint. + VpcSecurityGroups []*VpcSecurityGroupMembership `locationName:"vpcSecurityGroups" type:"list"` + + // The name of the workgroup associated with the endpoint. + WorkgroupName *string `locationName:"workgroupName" 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 EndpointAccess) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s EndpointAccess) GoString() string { + return s.String() +} + +// SetAddress sets the Address field's value. +func (s *EndpointAccess) SetAddress(v string) *EndpointAccess { + s.Address = &v + return s +} + +// SetEndpointArn sets the EndpointArn field's value. +func (s *EndpointAccess) SetEndpointArn(v string) *EndpointAccess { + s.EndpointArn = &v + return s +} + +// SetEndpointCreateTime sets the EndpointCreateTime field's value. +func (s *EndpointAccess) SetEndpointCreateTime(v time.Time) *EndpointAccess { + s.EndpointCreateTime = &v + return s +} + +// SetEndpointName sets the EndpointName field's value. +func (s *EndpointAccess) SetEndpointName(v string) *EndpointAccess { + s.EndpointName = &v + return s +} + +// SetEndpointStatus sets the EndpointStatus field's value. +func (s *EndpointAccess) SetEndpointStatus(v string) *EndpointAccess { + s.EndpointStatus = &v + return s +} + +// SetPort sets the Port field's value. +func (s *EndpointAccess) SetPort(v int64) *EndpointAccess { + s.Port = &v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *EndpointAccess) SetSubnetIds(v []*string) *EndpointAccess { + s.SubnetIds = v + return s +} + +// SetVpcEndpoint sets the VpcEndpoint field's value. +func (s *EndpointAccess) SetVpcEndpoint(v *VpcEndpoint) *EndpointAccess { + s.VpcEndpoint = v + return s +} + +// SetVpcSecurityGroups sets the VpcSecurityGroups field's value. +func (s *EndpointAccess) SetVpcSecurityGroups(v []*VpcSecurityGroupMembership) *EndpointAccess { + s.VpcSecurityGroups = v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *EndpointAccess) SetWorkgroupName(v string) *EndpointAccess { + s.WorkgroupName = &v + return s +} + +type GetCredentialsInput struct { + _ struct{} `type:"structure"` + + // The name of the database to get temporary authorization to log on to. + // + // Constraints: + // + // * Must be 1 to 64 alphanumeric characters or hyphens. + // + // * Must contain only lowercase letters, numbers, underscore, plus sign, + // period (dot), at symbol (@), or hyphen. + // + // * The first character must be a letter. + // + // * Must not contain a colon ( : ) or slash ( / ). + // + // * Cannot be a reserved word. A list of reserved words can be found in + // Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) + // in the Amazon Redshift Database Developer Guide + DbName *string `locationName:"dbName" type:"string"` + + // The number of seconds until the returned temporary password expires. The + // minimum is 900 seconds, and the maximum is 3600 seconds. + DurationSeconds *int64 `locationName:"durationSeconds" type:"integer"` + + // The name of the workgroup associated with the database. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 GetCredentialsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCredentialsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetCredentialsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetCredentialsInput"} + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDbName sets the DbName field's value. +func (s *GetCredentialsInput) SetDbName(v string) *GetCredentialsInput { + s.DbName = &v + return s +} + +// SetDurationSeconds sets the DurationSeconds field's value. +func (s *GetCredentialsInput) SetDurationSeconds(v int64) *GetCredentialsInput { + s.DurationSeconds = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *GetCredentialsInput) SetWorkgroupName(v string) *GetCredentialsInput { + s.WorkgroupName = &v + return s +} + +type GetCredentialsOutput struct { + _ struct{} `type:"structure"` + + // A temporary password that authorizes the user name returned by DbUser to + // log on to the database DbName. + // + // DbPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetCredentialsOutput's + // String and GoString methods. + DbPassword *string `locationName:"dbPassword" type:"string" sensitive:"true"` + + // A database user name that is authorized to log on to the database DbName + // using the password DbPassword. If the specified DbUser exists in the database, + // the new user name has the same database privileges as the the user named + // in DbUser. By default, the user is added to PUBLIC. + // + // DbUser is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by GetCredentialsOutput's + // String and GoString methods. + DbUser *string `locationName:"dbUser" type:"string" sensitive:"true"` + + // The date and time the password in DbPassword expires. + Expiration *time.Time `locationName:"expiration" type:"timestamp"` + + // The date and time of when the DbUser and DbPassword authorization refreshes. + NextRefreshTime *time.Time `locationName:"nextRefreshTime" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCredentialsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetCredentialsOutput) GoString() string { + return s.String() +} + +// SetDbPassword sets the DbPassword field's value. +func (s *GetCredentialsOutput) SetDbPassword(v string) *GetCredentialsOutput { + s.DbPassword = &v + return s +} + +// SetDbUser sets the DbUser field's value. +func (s *GetCredentialsOutput) SetDbUser(v string) *GetCredentialsOutput { + s.DbUser = &v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *GetCredentialsOutput) SetExpiration(v time.Time) *GetCredentialsOutput { + s.Expiration = &v + return s +} + +// SetNextRefreshTime sets the NextRefreshTime field's value. +func (s *GetCredentialsOutput) SetNextRefreshTime(v time.Time) *GetCredentialsOutput { + s.NextRefreshTime = &v + return s +} + +type GetEndpointAccessInput struct { + _ struct{} `type:"structure"` + + // The name of the VPC endpoint to return information for. + // + // EndpointName is a required field + EndpointName *string `locationName:"endpointName" 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 GetEndpointAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEndpointAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEndpointAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEndpointAccessInput"} + if s.EndpointName == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointName sets the EndpointName field's value. +func (s *GetEndpointAccessInput) SetEndpointName(v string) *GetEndpointAccessInput { + s.EndpointName = &v + return s +} + +type GetEndpointAccessOutput struct { + _ struct{} `type:"structure"` + + // The returned VPC endpoint. + Endpoint *EndpointAccess `locationName:"endpoint" 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 GetEndpointAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetEndpointAccessOutput) GoString() string { + return s.String() +} + +// SetEndpoint sets the Endpoint field's value. +func (s *GetEndpointAccessOutput) SetEndpoint(v *EndpointAccess) *GetEndpointAccessOutput { + s.Endpoint = v + return s +} + +type GetNamespaceInput struct { + _ struct{} `type:"structure"` + + // The name of the namespace to retrieve information for. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" 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 GetNamespaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetNamespaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetNamespaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetNamespaceInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *GetNamespaceInput) SetNamespaceName(v string) *GetNamespaceInput { + s.NamespaceName = &v + return s +} + +type GetNamespaceOutput struct { + _ struct{} `type:"structure"` + + // The returned namespace object. + // + // Namespace is a required field + Namespace *Namespace `locationName:"namespace" 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 GetNamespaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetNamespaceOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *GetNamespaceOutput) SetNamespace(v *Namespace) *GetNamespaceOutput { + s.Namespace = v + return s +} + +type GetRecoveryPointInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the recovery point to return information for. + // + // RecoveryPointId is a required field + RecoveryPointId *string `locationName:"recoveryPointId" 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 GetRecoveryPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecoveryPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetRecoveryPointInput"} + if s.RecoveryPointId == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *GetRecoveryPointInput) SetRecoveryPointId(v string) *GetRecoveryPointInput { + s.RecoveryPointId = &v + return s +} + +type GetRecoveryPointOutput struct { + _ struct{} `type:"structure"` + + // The returned recovery point object. + RecoveryPoint *RecoveryPoint `locationName:"recoveryPoint" 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 GetRecoveryPointOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetRecoveryPointOutput) GoString() string { + return s.String() +} + +// SetRecoveryPoint sets the RecoveryPoint field's value. +func (s *GetRecoveryPointOutput) SetRecoveryPoint(v *RecoveryPoint) *GetRecoveryPointOutput { + s.RecoveryPoint = v + return s +} + +type GetResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource to return. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" 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 GetResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetResourcePolicyInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *GetResourcePolicyInput) SetResourceArn(v string) *GetResourcePolicyInput { + s.ResourceArn = &v + return s +} + +type GetResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The returned resource policy. + ResourcePolicy *ResourcePolicy `locationName:"resourcePolicy" 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 GetResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetResourcePolicy sets the ResourcePolicy field's value. +func (s *GetResourcePolicyOutput) SetResourcePolicy(v *ResourcePolicy) *GetResourcePolicyOutput { + s.ResourcePolicy = v + return s +} + +type GetSnapshotInput struct { + _ struct{} `type:"structure"` + + // The owner Amazon Web Services account of a snapshot shared with another user. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The Amazon Resource Name (ARN) of the snapshot to return. + SnapshotArn *string `locationName:"snapshotArn" type:"string"` + + // The name of the snapshot to return. + SnapshotName *string `locationName:"snapshotName" 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 GetSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSnapshotInput) GoString() string { + return s.String() +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *GetSnapshotInput) SetOwnerAccount(v string) *GetSnapshotInput { + s.OwnerAccount = &v + return s +} + +// SetSnapshotArn sets the SnapshotArn field's value. +func (s *GetSnapshotInput) SetSnapshotArn(v string) *GetSnapshotInput { + s.SnapshotArn = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *GetSnapshotInput) SetSnapshotName(v string) *GetSnapshotInput { + s.SnapshotName = &v + return s +} + +type GetSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The returned snapshot object. + Snapshot *Snapshot `locationName:"snapshot" 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 GetSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *GetSnapshotOutput) SetSnapshot(v *Snapshot) *GetSnapshotOutput { + s.Snapshot = v + return s +} + +type GetUsageLimitInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the usage limit to return information for. + // + // UsageLimitId is a required field + UsageLimitId *string `locationName:"usageLimitId" 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 GetUsageLimitInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUsageLimitInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetUsageLimitInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetUsageLimitInput"} + if s.UsageLimitId == nil { + invalidParams.Add(request.NewErrParamRequired("UsageLimitId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetUsageLimitId sets the UsageLimitId field's value. +func (s *GetUsageLimitInput) SetUsageLimitId(v string) *GetUsageLimitInput { + s.UsageLimitId = &v + return s +} + +type GetUsageLimitOutput struct { + _ struct{} `type:"structure"` + + // The returned usage limit object. + UsageLimit *UsageLimit `locationName:"usageLimit" 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 GetUsageLimitOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetUsageLimitOutput) GoString() string { + return s.String() +} + +// SetUsageLimit sets the UsageLimit field's value. +func (s *GetUsageLimitOutput) SetUsageLimit(v *UsageLimit) *GetUsageLimitOutput { + s.UsageLimit = v + return s +} + +type GetWorkgroupInput struct { + _ struct{} `type:"structure"` + + // The name of the workgroup to return information for. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 GetWorkgroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWorkgroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetWorkgroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetWorkgroupInput"} + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *GetWorkgroupInput) SetWorkgroupName(v string) *GetWorkgroupInput { + s.WorkgroupName = &v + return s +} + +type GetWorkgroupOutput struct { + _ struct{} `type:"structure"` + + // The returned workgroup object. + // + // Workgroup is a required field + Workgroup *Workgroup `locationName:"workgroup" 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 GetWorkgroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetWorkgroupOutput) GoString() string { + return s.String() +} + +// SetWorkgroup sets the Workgroup field's value. +func (s *GetWorkgroupOutput) SetWorkgroup(v *Workgroup) *GetWorkgroupOutput { + s.Workgroup = v + return s +} + +// There is an insufficient capacity to perform the action. +type InsufficientCapacityException 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 InsufficientCapacityException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InsufficientCapacityException) GoString() string { + return s.String() +} + +func newErrorInsufficientCapacityException(v protocol.ResponseMetadata) error { + return &InsufficientCapacityException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InsufficientCapacityException) Code() string { + return "InsufficientCapacityException" +} + +// Message returns the exception's message. +func (s *InsufficientCapacityException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InsufficientCapacityException) OrigErr() error { + return nil +} + +func (s *InsufficientCapacityException) 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 *InsufficientCapacityException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InsufficientCapacityException) RequestID() string { + return s.RespMetadata.RequestID +} + +// 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 +} + +// The provided pagination token is invalid. +type InvalidPaginationException 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 InvalidPaginationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvalidPaginationException) GoString() string { + return s.String() +} + +func newErrorInvalidPaginationException(v protocol.ResponseMetadata) error { + return &InvalidPaginationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidPaginationException) Code() string { + return "InvalidPaginationException" +} + +// Message returns the exception's message. +func (s *InvalidPaginationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidPaginationException) OrigErr() error { + return nil +} + +func (s *InvalidPaginationException) 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 *InvalidPaginationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidPaginationException) RequestID() string { + return s.RespMetadata.RequestID +} + +type ListEndpointAccessInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If your initial ListEndpointAccess operation returns a nextToken, you can + // include the returned nextToken in subsequent ListEndpointAccess operations, + // which returns results in the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // The unique identifier of the virtual private cloud with access to Amazon + // Redshift Serverless. + VpcId *string `locationName:"vpcId" type:"string"` + + // The name of the workgroup associated with the VPC endpoint to return. + WorkgroupName *string `locationName:"workgroupName" 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 ListEndpointAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEndpointAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEndpointAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEndpointAccessInput"} + 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 *ListEndpointAccessInput) SetMaxResults(v int64) *ListEndpointAccessInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEndpointAccessInput) SetNextToken(v string) *ListEndpointAccessInput { + s.NextToken = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *ListEndpointAccessInput) SetVpcId(v string) *ListEndpointAccessInput { + s.VpcId = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *ListEndpointAccessInput) SetWorkgroupName(v string) *ListEndpointAccessInput { + s.WorkgroupName = &v + return s +} + +type ListEndpointAccessOutput struct { + _ struct{} `type:"structure"` + + // The returned VPC endpoints. + // + // Endpoints is a required field + Endpoints []*EndpointAccess `locationName:"endpoints" type:"list" required:"true"` + + // When nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + 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 ListEndpointAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListEndpointAccessOutput) GoString() string { + return s.String() +} + +// SetEndpoints sets the Endpoints field's value. +func (s *ListEndpointAccessOutput) SetEndpoints(v []*EndpointAccess) *ListEndpointAccessOutput { + s.Endpoints = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEndpointAccessOutput) SetNextToken(v string) *ListEndpointAccessOutput { + s.NextToken = &v + return s +} + +type ListNamespacesInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If your initial ListNamespaces operation returns a nextToken, you can include + // the returned nextToken in subsequent ListNamespaces operations, which returns + // results in the next page. + 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 ListNamespacesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNamespacesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListNamespacesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListNamespacesInput"} + 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 *ListNamespacesInput) SetMaxResults(v int64) *ListNamespacesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListNamespacesInput) SetNextToken(v string) *ListNamespacesInput { + s.NextToken = &v + return s +} + +type ListNamespacesOutput struct { + _ struct{} `type:"structure"` + + // The list of returned namespaces. + // + // Namespaces is a required field + Namespaces []*Namespace `locationName:"namespaces" type:"list" required:"true"` + + // When nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + 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 ListNamespacesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListNamespacesOutput) GoString() string { + return s.String() +} + +// SetNamespaces sets the Namespaces field's value. +func (s *ListNamespacesOutput) SetNamespaces(v []*Namespace) *ListNamespacesOutput { + s.Namespaces = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListNamespacesOutput) SetNextToken(v string) *ListNamespacesOutput { + s.NextToken = &v + return s +} + +type ListRecoveryPointsInput struct { + _ struct{} `type:"structure"` + + // The time when creation of the recovery point finished. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The name of the namespace to list recovery points for. + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string"` + + // If your initial ListRecoveryPoints operation returns a nextToken, you can + // include the returned nextToken in subsequent ListRecoveryPoints operations, + // which returns results in the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // The time when the recovery point's creation was initiated. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecoveryPointsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecoveryPointsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListRecoveryPointsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListRecoveryPointsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTime sets the EndTime field's value. +func (s *ListRecoveryPointsInput) SetEndTime(v time.Time) *ListRecoveryPointsInput { + s.EndTime = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListRecoveryPointsInput) SetMaxResults(v int64) *ListRecoveryPointsInput { + s.MaxResults = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *ListRecoveryPointsInput) SetNamespaceName(v string) *ListRecoveryPointsInput { + s.NamespaceName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecoveryPointsInput) SetNextToken(v string) *ListRecoveryPointsInput { + s.NextToken = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ListRecoveryPointsInput) SetStartTime(v time.Time) *ListRecoveryPointsInput { + s.StartTime = &v + return s +} + +type ListRecoveryPointsOutput struct { + _ struct{} `type:"structure"` + + // If nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // The returned recovery point objects. + RecoveryPoints []*RecoveryPoint `locationName:"recoveryPoints" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecoveryPointsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListRecoveryPointsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListRecoveryPointsOutput) SetNextToken(v string) *ListRecoveryPointsOutput { + s.NextToken = &v + return s +} + +// SetRecoveryPoints sets the RecoveryPoints field's value. +func (s *ListRecoveryPointsOutput) SetRecoveryPoints(v []*RecoveryPoint) *ListRecoveryPointsOutput { + s.RecoveryPoints = v + return s +} + +type ListSnapshotsInput struct { + _ struct{} `type:"structure"` + + // The timestamp showing when the snapshot creation finished. + EndTime *time.Time `locationName:"endTime" type:"timestamp"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The Amazon Resource Name (ARN) of the namespace from which to list all snapshots. + NamespaceArn *string `locationName:"namespaceArn" type:"string"` + + // The namespace from which to list all snapshots. + NamespaceName *string `locationName:"namespaceName" type:"string"` + + // If nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // The owner Amazon Web Services account of the snapshot. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The time when the creation of the snapshot was initiated. + StartTime *time.Time `locationName:"startTime" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSnapshotsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSnapshotsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndTime sets the EndTime field's value. +func (s *ListSnapshotsInput) SetEndTime(v time.Time) *ListSnapshotsInput { + s.EndTime = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSnapshotsInput) SetMaxResults(v int64) *ListSnapshotsInput { + s.MaxResults = &v + return s +} + +// SetNamespaceArn sets the NamespaceArn field's value. +func (s *ListSnapshotsInput) SetNamespaceArn(v string) *ListSnapshotsInput { + s.NamespaceArn = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *ListSnapshotsInput) SetNamespaceName(v string) *ListSnapshotsInput { + s.NamespaceName = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSnapshotsInput) SetNextToken(v string) *ListSnapshotsInput { + s.NextToken = &v + return s +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *ListSnapshotsInput) SetOwnerAccount(v string) *ListSnapshotsInput { + s.OwnerAccount = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ListSnapshotsInput) SetStartTime(v time.Time) *ListSnapshotsInput { + s.StartTime = &v + return s +} + +type ListSnapshotsOutput struct { + _ struct{} `type:"structure"` + + // If nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + NextToken *string `locationName:"nextToken" type:"string"` + + // All of the returned snapshot objects. + Snapshots []*Snapshot `locationName:"snapshots" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSnapshotsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSnapshotsOutput) SetNextToken(v string) *ListSnapshotsOutput { + s.NextToken = &v + return s +} + +// SetSnapshots sets the Snapshots field's value. +func (s *ListSnapshotsOutput) SetSnapshots(v []*Snapshot) *ListSnapshotsOutput { + s.Snapshots = v + return s +} + +type ListTagsForResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource to list tags for. + // + // 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 map of the key-value pairs assigned to the resource. + Tags []*Tag `locationName:"tags" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput { + s.Tags = v + return s +} + +type ListUsageLimitsInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. The default is 100. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If your initial ListUsageLimits operation returns a nextToken, you can include + // the returned nextToken in subsequent ListUsageLimits operations, which returns + // results in the next page. + NextToken *string `locationName:"nextToken" min:"8" type:"string"` + + // The Amazon Resource Name (ARN) associated with the resource whose usage limits + // you want to list. + ResourceArn *string `locationName:"resourceArn" type:"string"` + + // The Amazon Redshift Serverless feature whose limits you want to see. + UsageType *string `locationName:"usageType" type:"string" enum:"UsageLimitUsageType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUsageLimitsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUsageLimitsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListUsageLimitsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUsageLimitsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.NextToken != nil && len(*s.NextToken) < 8 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 8)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListUsageLimitsInput) SetMaxResults(v int64) *ListUsageLimitsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUsageLimitsInput) SetNextToken(v string) *ListUsageLimitsInput { + s.NextToken = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListUsageLimitsInput) SetResourceArn(v string) *ListUsageLimitsInput { + s.ResourceArn = &v + return s +} + +// SetUsageType sets the UsageType field's value. +func (s *ListUsageLimitsInput) SetUsageType(v string) *ListUsageLimitsInput { + s.UsageType = &v + return s +} + +type ListUsageLimitsOutput struct { + _ struct{} `type:"structure"` + + // When nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. Make the call again + // using the returned token to retrieve the next page. + NextToken *string `locationName:"nextToken" min:"8" type:"string"` + + // An array of returned usage limit objects. + UsageLimits []*UsageLimit `locationName:"usageLimits" min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUsageLimitsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUsageLimitsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUsageLimitsOutput) SetNextToken(v string) *ListUsageLimitsOutput { + s.NextToken = &v + return s +} + +// SetUsageLimits sets the UsageLimits field's value. +func (s *ListUsageLimitsOutput) SetUsageLimits(v []*UsageLimit) *ListUsageLimitsOutput { + s.UsageLimits = v + return s +} + +type ListWorkgroupsInput struct { + _ struct{} `type:"structure"` + + // An optional parameter that specifies the maximum number of results to return. + // You can use nextToken to get the next page of results. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If your initial ListWorkgroups operation returns a nextToken, you can include + // the returned nextToken in subsequent ListNamespaces operations, which returns + // results in the next page. + 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 ListWorkgroupsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkgroupsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListWorkgroupsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListWorkgroupsInput"} + 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 *ListWorkgroupsInput) SetMaxResults(v int64) *ListWorkgroupsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkgroupsInput) SetNextToken(v string) *ListWorkgroupsInput { + s.NextToken = &v + return s +} + +type ListWorkgroupsOutput struct { + _ struct{} `type:"structure"` + + // If nextToken is returned, there are more results available. The value of + // nextToken is a unique pagination token for each page. To retrieve the next + // page, make the call again using the returned token. + NextToken *string `locationName:"nextToken" type:"string"` + + // The returned array of workgroups. + // + // Workgroups is a required field + Workgroups []*Workgroup `locationName:"workgroups" 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 ListWorkgroupsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListWorkgroupsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListWorkgroupsOutput) SetNextToken(v string) *ListWorkgroupsOutput { + s.NextToken = &v + return s +} + +// SetWorkgroups sets the Workgroups field's value. +func (s *ListWorkgroupsOutput) SetWorkgroups(v []*Workgroup) *ListWorkgroupsOutput { + s.Workgroups = v + return s +} + +// A collection of database objects and users. +type Namespace struct { + _ struct{} `type:"structure"` + + // The username of the administrator for the first database created in the namespace. + // + // AdminUsername is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by Namespace's + // String and GoString methods. + AdminUsername *string `locationName:"adminUsername" type:"string" sensitive:"true"` + + // The date of when the namespace was created. + CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the first database created in the namespace. + DbName *string `locationName:"dbName" type:"string"` + + // The Amazon Resource Name (ARN) of the IAM role to set as a default in the + // namespace. + DefaultIamRoleArn *string `locationName:"defaultIamRoleArn" type:"string"` + + // A list of IAM roles to associate with the namespace. + IamRoles []*string `locationName:"iamRoles" type:"list"` + + // The ID of the Amazon Web Services Key Management Service key used to encrypt + // your data. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The types of logs the namespace can export. Available export types are User + // log, Connection log, and User activity log. + LogExports []*string `locationName:"logExports" type:"list" enum:"LogExport"` + + // The Amazon Resource Name (ARN) associated with a namespace. + NamespaceArn *string `locationName:"namespaceArn" type:"string"` + + // The unique identifier of a namespace. + NamespaceId *string `locationName:"namespaceId" type:"string"` + + // The name of the namespace. Must be between 3-64 alphanumeric characters in + // lowercase, and it cannot be a reserved word. A list of reserved words can + // be found in Reserved Words (https://docs.aws.amazon.com/redshift/latest/dg/r_pg_keywords.html) + // in the Amazon Redshift Database Developer Guide. + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string"` + + // The status of the namespace. + Status *string `locationName:"status" type:"string" enum:"NamespaceStatus"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Namespace) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Namespace) GoString() string { + return s.String() +} + +// SetAdminUsername sets the AdminUsername field's value. +func (s *Namespace) SetAdminUsername(v string) *Namespace { + s.AdminUsername = &v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *Namespace) SetCreationDate(v time.Time) *Namespace { + s.CreationDate = &v + return s +} + +// SetDbName sets the DbName field's value. +func (s *Namespace) SetDbName(v string) *Namespace { + s.DbName = &v + return s +} + +// SetDefaultIamRoleArn sets the DefaultIamRoleArn field's value. +func (s *Namespace) SetDefaultIamRoleArn(v string) *Namespace { + s.DefaultIamRoleArn = &v + return s +} + +// SetIamRoles sets the IamRoles field's value. +func (s *Namespace) SetIamRoles(v []*string) *Namespace { + s.IamRoles = v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *Namespace) SetKmsKeyId(v string) *Namespace { + s.KmsKeyId = &v + return s +} + +// SetLogExports sets the LogExports field's value. +func (s *Namespace) SetLogExports(v []*string) *Namespace { + s.LogExports = v + return s +} + +// SetNamespaceArn sets the NamespaceArn field's value. +func (s *Namespace) SetNamespaceArn(v string) *Namespace { + s.NamespaceArn = &v + return s +} + +// SetNamespaceId sets the NamespaceId field's value. +func (s *Namespace) SetNamespaceId(v string) *Namespace { + s.NamespaceId = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *Namespace) SetNamespaceName(v string) *Namespace { + s.NamespaceName = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Namespace) SetStatus(v string) *Namespace { + s.Status = &v + return s +} + +// Contains information about a network interface in an Amazon Redshift Serverless +// managed VPC endpoint. +type NetworkInterface struct { + _ struct{} `type:"structure"` + + // The availability Zone. + AvailabilityZone *string `locationName:"availabilityZone" type:"string"` + + // The unique identifier of the network interface. + NetworkInterfaceId *string `locationName:"networkInterfaceId" type:"string"` + + // The IPv4 address of the network interface within the subnet. + PrivateIpAddress *string `locationName:"privateIpAddress" type:"string"` + + // The unique identifier of the subnet. + SubnetId *string `locationName:"subnetId" 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 NetworkInterface) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s NetworkInterface) GoString() string { + return s.String() +} + +// SetAvailabilityZone sets the AvailabilityZone field's value. +func (s *NetworkInterface) SetAvailabilityZone(v string) *NetworkInterface { + s.AvailabilityZone = &v + return s +} + +// SetNetworkInterfaceId sets the NetworkInterfaceId field's value. +func (s *NetworkInterface) SetNetworkInterfaceId(v string) *NetworkInterface { + s.NetworkInterfaceId = &v + return s +} + +// SetPrivateIpAddress sets the PrivateIpAddress field's value. +func (s *NetworkInterface) SetPrivateIpAddress(v string) *NetworkInterface { + s.PrivateIpAddress = &v + return s +} + +// SetSubnetId sets the SubnetId field's value. +func (s *NetworkInterface) SetSubnetId(v string) *NetworkInterface { + s.SubnetId = &v + return s +} + +type PutResourcePolicyInput struct { + _ struct{} `type:"structure"` + + // The policy to create or update. For example, the following policy grants + // a user authorization to restore a snapshot. + // + // "{\"Version\": \"2012-10-17\", \"Statement\" : [{ \"Sid\": \"AllowUserRestoreFromSnapshot\", + // \"Principal\":{\"AWS\": [\"739247239426\"]}, \"Action\": [\"redshift-serverless:RestoreFromSnapshot\"] + // , \"Effect\": \"Allow\" }]}" + // + // Policy is a required field + Policy *string `locationName:"policy" type:"string" required:"true"` + + // The Amazon Resource Name (ARN) of the account to create or update a resource + // policy for. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutResourcePolicyInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutResourcePolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutResourcePolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutResourcePolicyInput"} + if s.Policy == nil { + invalidParams.Add(request.NewErrParamRequired("Policy")) + } + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolicy sets the Policy field's value. +func (s *PutResourcePolicyInput) SetPolicy(v string) *PutResourcePolicyInput { + s.Policy = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *PutResourcePolicyInput) SetResourceArn(v string) *PutResourcePolicyInput { + s.ResourceArn = &v + return s +} + +type PutResourcePolicyOutput struct { + _ struct{} `type:"structure"` + + // The policy that was created or updated. + ResourcePolicy *ResourcePolicy `locationName:"resourcePolicy" 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 PutResourcePolicyOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutResourcePolicyOutput) GoString() string { + return s.String() +} + +// SetResourcePolicy sets the ResourcePolicy field's value. +func (s *PutResourcePolicyOutput) SetResourcePolicy(v *ResourcePolicy) *PutResourcePolicyOutput { + s.ResourcePolicy = v + return s +} + +// The automatically created recovery point of a namespace. Recovery points +// are created every 30 minutes and kept for 24 hours. +type RecoveryPoint struct { + _ struct{} `type:"structure"` + + // The name of the namespace the recovery point is associated with. + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string"` + + // The time the recovery point is created. + RecoveryPointCreateTime *time.Time `locationName:"recoveryPointCreateTime" type:"timestamp" timestampFormat:"iso8601"` + + // The unique identifier of the recovery point. + RecoveryPointId *string `locationName:"recoveryPointId" type:"string"` + + // The total size of the data in the recovery point in megabytes. + TotalSizeInMegaBytes *float64 `locationName:"totalSizeInMegaBytes" type:"double"` + + // The name of the workgroup the recovery point is associated with. + WorkgroupName *string `locationName:"workgroupName" min:"3" 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 RecoveryPoint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RecoveryPoint) GoString() string { + return s.String() +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *RecoveryPoint) SetNamespaceName(v string) *RecoveryPoint { + s.NamespaceName = &v + return s +} + +// SetRecoveryPointCreateTime sets the RecoveryPointCreateTime field's value. +func (s *RecoveryPoint) SetRecoveryPointCreateTime(v time.Time) *RecoveryPoint { + s.RecoveryPointCreateTime = &v + return s +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *RecoveryPoint) SetRecoveryPointId(v string) *RecoveryPoint { + s.RecoveryPointId = &v + return s +} + +// SetTotalSizeInMegaBytes sets the TotalSizeInMegaBytes field's value. +func (s *RecoveryPoint) SetTotalSizeInMegaBytes(v float64) *RecoveryPoint { + s.TotalSizeInMegaBytes = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *RecoveryPoint) SetWorkgroupName(v string) *RecoveryPoint { + s.WorkgroupName = &v + return s +} + +// The resource could not be found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The name of the resource that could not be found. + ResourceName *string `locationName:"resourceName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s 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 +} + +// The resource policy object. Currently, you can use policies to share snapshots +// across Amazon Web Services accounts. +type ResourcePolicy struct { + _ struct{} `type:"structure"` + + // The resource policy. + Policy *string `locationName:"policy" type:"string"` + + // The Amazon Resource Name (ARN) of the policy. + ResourceArn *string `locationName:"resourceArn" 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 ResourcePolicy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ResourcePolicy) GoString() string { + return s.String() +} + +// SetPolicy sets the Policy field's value. +func (s *ResourcePolicy) SetPolicy(v string) *ResourcePolicy { + s.Policy = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ResourcePolicy) SetResourceArn(v string) *ResourcePolicy { + s.ResourceArn = &v + return s +} + +type RestoreFromRecoveryPointInput struct { + _ struct{} `type:"structure"` + + // The name of the namespace to restore data into. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // The unique identifier of the recovery point to restore from. + // + // RecoveryPointId is a required field + RecoveryPointId *string `locationName:"recoveryPointId" type:"string" required:"true"` + + // The name of the workgroup used to restore data. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 RestoreFromRecoveryPointInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreFromRecoveryPointInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreFromRecoveryPointInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreFromRecoveryPointInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + if s.RecoveryPointId == nil { + invalidParams.Add(request.NewErrParamRequired("RecoveryPointId")) + } + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *RestoreFromRecoveryPointInput) SetNamespaceName(v string) *RestoreFromRecoveryPointInput { + s.NamespaceName = &v + return s +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *RestoreFromRecoveryPointInput) SetRecoveryPointId(v string) *RestoreFromRecoveryPointInput { + s.RecoveryPointId = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *RestoreFromRecoveryPointInput) SetWorkgroupName(v string) *RestoreFromRecoveryPointInput { + s.WorkgroupName = &v + return s +} + +type RestoreFromRecoveryPointOutput struct { + _ struct{} `type:"structure"` + + // The namespace that data was restored into. + Namespace *Namespace `locationName:"namespace" type:"structure"` + + // The unique identifier of the recovery point used for the restore. + RecoveryPointId *string `locationName:"recoveryPointId" 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 RestoreFromRecoveryPointOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreFromRecoveryPointOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *RestoreFromRecoveryPointOutput) SetNamespace(v *Namespace) *RestoreFromRecoveryPointOutput { + s.Namespace = v + return s +} + +// SetRecoveryPointId sets the RecoveryPointId field's value. +func (s *RestoreFromRecoveryPointOutput) SetRecoveryPointId(v string) *RestoreFromRecoveryPointOutput { + s.RecoveryPointId = &v + return s +} + +type RestoreFromSnapshotInput struct { + _ struct{} `type:"structure"` + + // The name of the namespace to restore the snapshot to. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" min:"3" type:"string" required:"true"` + + // The Amazon Web Services account that owns the snapshot. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The Amazon Resource Name (ARN) of the snapshot to restore from. + SnapshotArn *string `locationName:"snapshotArn" type:"string"` + + // The name of the snapshot to restore from. + SnapshotName *string `locationName:"snapshotName" type:"string"` + + // The name of the workgroup used to restore the snapshot. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 RestoreFromSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreFromSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RestoreFromSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RestoreFromSnapshotInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *RestoreFromSnapshotInput) SetNamespaceName(v string) *RestoreFromSnapshotInput { + s.NamespaceName = &v + return s +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *RestoreFromSnapshotInput) SetOwnerAccount(v string) *RestoreFromSnapshotInput { + s.OwnerAccount = &v + return s +} + +// SetSnapshotArn sets the SnapshotArn field's value. +func (s *RestoreFromSnapshotInput) SetSnapshotArn(v string) *RestoreFromSnapshotInput { + s.SnapshotArn = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *RestoreFromSnapshotInput) SetSnapshotName(v string) *RestoreFromSnapshotInput { + s.SnapshotName = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *RestoreFromSnapshotInput) SetWorkgroupName(v string) *RestoreFromSnapshotInput { + s.WorkgroupName = &v + return s +} + +type RestoreFromSnapshotOutput struct { + _ struct{} `type:"structure"` + + // A collection of database objects and users. + Namespace *Namespace `locationName:"namespace" type:"structure"` + + // The owner Amazon Web Services; account of the snapshot that was restored. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The name of the snapshot used to restore the namespace. + SnapshotName *string `locationName:"snapshotName" 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 RestoreFromSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s RestoreFromSnapshotOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *RestoreFromSnapshotOutput) SetNamespace(v *Namespace) *RestoreFromSnapshotOutput { + s.Namespace = v + return s +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *RestoreFromSnapshotOutput) SetOwnerAccount(v string) *RestoreFromSnapshotOutput { + s.OwnerAccount = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *RestoreFromSnapshotOutput) SetSnapshotName(v string) *RestoreFromSnapshotOutput { + s.SnapshotName = &v + return s +} + +// The service limit was exceeded. +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 +} + +// A snapshot object that contains databases. +type Snapshot struct { + _ struct{} `type:"structure"` + + // All of the Amazon Web Services accounts that have access to restore a snapshot + // to a provisioned cluster. + AccountsWithProvisionedRestoreAccess []*string `locationName:"accountsWithProvisionedRestoreAccess" type:"list"` + + // All of the Amazon Web Services accounts that have access to restore a snapshot + // to a namespace. + AccountsWithRestoreAccess []*string `locationName:"accountsWithRestoreAccess" type:"list"` + + // The size of the incremental backup in megabytes. + ActualIncrementalBackupSizeInMegaBytes *float64 `locationName:"actualIncrementalBackupSizeInMegaBytes" type:"double"` + + // The username of the database within a snapshot. + AdminUsername *string `locationName:"adminUsername" type:"string"` + + // The size in megabytes of the data that has been backed up to a snapshot. + BackupProgressInMegaBytes *float64 `locationName:"backupProgressInMegaBytes" type:"double"` + + // The rate at which data is backed up into a snapshot in megabytes per second. + CurrentBackupRateInMegaBytesPerSecond *float64 `locationName:"currentBackupRateInMegaBytesPerSecond" type:"double"` + + // The amount of time it took to back up data into a snapshot. + ElapsedTimeInSeconds *int64 `locationName:"elapsedTimeInSeconds" type:"long"` + + // The estimated amount of seconds until the snapshot completes backup. + EstimatedSecondsToCompletion *int64 `locationName:"estimatedSecondsToCompletion" type:"long"` + + // The unique identifier of the KMS key used to encrypt the snapshot. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The Amazon Resource Name (ARN) of the namespace the snapshot was created + // from. + NamespaceArn *string `locationName:"namespaceArn" type:"string"` + + // The name of the namepsace. + NamespaceName *string `locationName:"namespaceName" type:"string"` + + // The owner Amazon Web Services; account of the snapshot. + OwnerAccount *string `locationName:"ownerAccount" type:"string"` + + // The Amazon Resource Name (ARN) of the snapshot. + SnapshotArn *string `locationName:"snapshotArn" type:"string"` + + // The timestamp of when the snapshot was created. + SnapshotCreateTime *time.Time `locationName:"snapshotCreateTime" type:"timestamp" timestampFormat:"iso8601"` + + // The name of the snapshot. + SnapshotName *string `locationName:"snapshotName" type:"string"` + + // The amount of days until the snapshot is deleted. + SnapshotRemainingDays *int64 `locationName:"snapshotRemainingDays" type:"integer"` + + // The period of time, in days, of how long the snapshot is retained. + SnapshotRetentionPeriod *int64 `locationName:"snapshotRetentionPeriod" type:"integer"` + + // The timestamp of when data within the snapshot started getting retained. + SnapshotRetentionStartTime *time.Time `locationName:"snapshotRetentionStartTime" type:"timestamp" timestampFormat:"iso8601"` + + // The status of the snapshot. + Status *string `locationName:"status" type:"string" enum:"SnapshotStatus"` + + // The total size, in megabytes, of how big the snapshot is. + TotalBackupSizeInMegaBytes *float64 `locationName:"totalBackupSizeInMegaBytes" type:"double"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Snapshot) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Snapshot) GoString() string { + return s.String() +} + +// SetAccountsWithProvisionedRestoreAccess sets the AccountsWithProvisionedRestoreAccess field's value. +func (s *Snapshot) SetAccountsWithProvisionedRestoreAccess(v []*string) *Snapshot { + s.AccountsWithProvisionedRestoreAccess = v + return s +} + +// SetAccountsWithRestoreAccess sets the AccountsWithRestoreAccess field's value. +func (s *Snapshot) SetAccountsWithRestoreAccess(v []*string) *Snapshot { + s.AccountsWithRestoreAccess = v + return s +} + +// SetActualIncrementalBackupSizeInMegaBytes sets the ActualIncrementalBackupSizeInMegaBytes field's value. +func (s *Snapshot) SetActualIncrementalBackupSizeInMegaBytes(v float64) *Snapshot { + s.ActualIncrementalBackupSizeInMegaBytes = &v + return s +} + +// SetAdminUsername sets the AdminUsername field's value. +func (s *Snapshot) SetAdminUsername(v string) *Snapshot { + s.AdminUsername = &v + return s +} + +// SetBackupProgressInMegaBytes sets the BackupProgressInMegaBytes field's value. +func (s *Snapshot) SetBackupProgressInMegaBytes(v float64) *Snapshot { + s.BackupProgressInMegaBytes = &v + return s +} + +// SetCurrentBackupRateInMegaBytesPerSecond sets the CurrentBackupRateInMegaBytesPerSecond field's value. +func (s *Snapshot) SetCurrentBackupRateInMegaBytesPerSecond(v float64) *Snapshot { + s.CurrentBackupRateInMegaBytesPerSecond = &v + return s +} + +// SetElapsedTimeInSeconds sets the ElapsedTimeInSeconds field's value. +func (s *Snapshot) SetElapsedTimeInSeconds(v int64) *Snapshot { + s.ElapsedTimeInSeconds = &v + return s +} + +// SetEstimatedSecondsToCompletion sets the EstimatedSecondsToCompletion field's value. +func (s *Snapshot) SetEstimatedSecondsToCompletion(v int64) *Snapshot { + s.EstimatedSecondsToCompletion = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *Snapshot) SetKmsKeyId(v string) *Snapshot { + s.KmsKeyId = &v + return s +} + +// SetNamespaceArn sets the NamespaceArn field's value. +func (s *Snapshot) SetNamespaceArn(v string) *Snapshot { + s.NamespaceArn = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *Snapshot) SetNamespaceName(v string) *Snapshot { + s.NamespaceName = &v + return s +} + +// SetOwnerAccount sets the OwnerAccount field's value. +func (s *Snapshot) SetOwnerAccount(v string) *Snapshot { + s.OwnerAccount = &v + return s +} + +// SetSnapshotArn sets the SnapshotArn field's value. +func (s *Snapshot) SetSnapshotArn(v string) *Snapshot { + s.SnapshotArn = &v + return s +} + +// SetSnapshotCreateTime sets the SnapshotCreateTime field's value. +func (s *Snapshot) SetSnapshotCreateTime(v time.Time) *Snapshot { + s.SnapshotCreateTime = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *Snapshot) SetSnapshotName(v string) *Snapshot { + s.SnapshotName = &v + return s +} + +// SetSnapshotRemainingDays sets the SnapshotRemainingDays field's value. +func (s *Snapshot) SetSnapshotRemainingDays(v int64) *Snapshot { + s.SnapshotRemainingDays = &v + return s +} + +// SetSnapshotRetentionPeriod sets the SnapshotRetentionPeriod field's value. +func (s *Snapshot) SetSnapshotRetentionPeriod(v int64) *Snapshot { + s.SnapshotRetentionPeriod = &v + return s +} + +// SetSnapshotRetentionStartTime sets the SnapshotRetentionStartTime field's value. +func (s *Snapshot) SetSnapshotRetentionStartTime(v time.Time) *Snapshot { + s.SnapshotRetentionStartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Snapshot) SetStatus(v string) *Snapshot { + s.Status = &v + return s +} + +// SetTotalBackupSizeInMegaBytes sets the TotalBackupSizeInMegaBytes field's value. +func (s *Snapshot) SetTotalBackupSizeInMegaBytes(v float64) *Snapshot { + s.TotalBackupSizeInMegaBytes = &v + return s +} + +// A map of key-value pairs. +type Tag struct { + _ struct{} `type:"structure"` + + // The key to use in the tag. + // + // Key is a required field + Key *string `locationName:"key" min:"1" type:"string" required:"true"` + + // The value of the tag. + // + // Value is a required field + Value *string `locationName:"value" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Tag) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Value == nil { + invalidParams.Add(request.NewErrParamRequired("Value")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *Tag) SetKey(v string) *Tag { + s.Key = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Tag) SetValue(v string) *Tag { + s.Value = &v + return s +} + +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource to tag. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // The map of the key-value pairs used to tag the resource. + // + // Tags is a required field + Tags []*Tag `locationName:"tags" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + if s.Tags != nil { + for i, v := range s.Tags { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// The request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Code_ *string `locationName:"code" type:"string"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\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 +} + +// The request exceeded the number of tags allowed for a resource. +type TooManyTagsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The name of the resource that exceeded the number of tags allowed for a resource. + ResourceName *string `locationName:"resourceName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TooManyTagsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TooManyTagsException) GoString() string { + return s.String() +} + +func newErrorTooManyTagsException(v protocol.ResponseMetadata) error { + return &TooManyTagsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *TooManyTagsException) Code() string { + return "TooManyTagsException" +} + +// Message returns the exception's message. +func (s *TooManyTagsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *TooManyTagsException) OrigErr() error { + return nil +} + +func (s *TooManyTagsException) 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 *TooManyTagsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *TooManyTagsException) RequestID() string { + return s.RespMetadata.RequestID +} + +type UntagResourceInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the resource to remove tags from. + // + // ResourceArn is a required field + ResourceArn *string `locationName:"resourceArn" min:"1" type:"string" required:"true"` + + // The tag or set of tags to remove from the resource. + // + // TagKeys is a required field + TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +type UntagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UntagResourceOutput) GoString() string { + return s.String() +} + +type UpdateEndpointAccessInput struct { + _ struct{} `type:"structure"` + + // The name of the VPC endpoint to update. + // + // EndpointName is a required field + EndpointName *string `locationName:"endpointName" type:"string" required:"true"` + + // The list of VPC security groups associated with the endpoint after the endpoint + // is modified. + VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEndpointAccessInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEndpointAccessInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEndpointAccessInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEndpointAccessInput"} + if s.EndpointName == nil { + invalidParams.Add(request.NewErrParamRequired("EndpointName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEndpointName sets the EndpointName field's value. +func (s *UpdateEndpointAccessInput) SetEndpointName(v string) *UpdateEndpointAccessInput { + s.EndpointName = &v + return s +} + +// SetVpcSecurityGroupIds sets the VpcSecurityGroupIds field's value. +func (s *UpdateEndpointAccessInput) SetVpcSecurityGroupIds(v []*string) *UpdateEndpointAccessInput { + s.VpcSecurityGroupIds = v + return s +} + +type UpdateEndpointAccessOutput struct { + _ struct{} `type:"structure"` + + // The updated VPC endpoint. + Endpoint *EndpointAccess `locationName:"endpoint" 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 UpdateEndpointAccessOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateEndpointAccessOutput) GoString() string { + return s.String() +} + +// SetEndpoint sets the Endpoint field's value. +func (s *UpdateEndpointAccessOutput) SetEndpoint(v *EndpointAccess) *UpdateEndpointAccessOutput { + s.Endpoint = v + return s +} + +type UpdateNamespaceInput struct { + _ struct{} `type:"structure"` + + // The password of the administrator for the first database created in the namespace. + // + // AdminUserPassword is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateNamespaceInput's + // String and GoString methods. + AdminUserPassword *string `locationName:"adminUserPassword" type:"string" sensitive:"true"` + + // The username of the administrator for the first database created in the namespace. + // + // AdminUsername is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateNamespaceInput's + // String and GoString methods. + AdminUsername *string `locationName:"adminUsername" type:"string" sensitive:"true"` + + // The Amazon Resource Name (ARN) of the IAM role to set as a default in the + // namespace. + DefaultIamRoleArn *string `locationName:"defaultIamRoleArn" type:"string"` + + // A list of IAM roles to associate with the namespace. + IamRoles []*string `locationName:"iamRoles" type:"list"` + + // The ID of the Amazon Web Services Key Management Service key used to encrypt + // your data. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The types of logs the namespace can export. The export types are userlog, + // connectionlog, and useractivitylog. + LogExports []*string `locationName:"logExports" type:"list" enum:"LogExport"` + + // The name of the namespace. + // + // NamespaceName is a required field + NamespaceName *string `locationName:"namespaceName" 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 UpdateNamespaceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateNamespaceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateNamespaceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateNamespaceInput"} + if s.NamespaceName == nil { + invalidParams.Add(request.NewErrParamRequired("NamespaceName")) + } + if s.NamespaceName != nil && len(*s.NamespaceName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("NamespaceName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAdminUserPassword sets the AdminUserPassword field's value. +func (s *UpdateNamespaceInput) SetAdminUserPassword(v string) *UpdateNamespaceInput { + s.AdminUserPassword = &v + return s +} + +// SetAdminUsername sets the AdminUsername field's value. +func (s *UpdateNamespaceInput) SetAdminUsername(v string) *UpdateNamespaceInput { + s.AdminUsername = &v + return s +} + +// SetDefaultIamRoleArn sets the DefaultIamRoleArn field's value. +func (s *UpdateNamespaceInput) SetDefaultIamRoleArn(v string) *UpdateNamespaceInput { + s.DefaultIamRoleArn = &v + return s +} + +// SetIamRoles sets the IamRoles field's value. +func (s *UpdateNamespaceInput) SetIamRoles(v []*string) *UpdateNamespaceInput { + s.IamRoles = v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *UpdateNamespaceInput) SetKmsKeyId(v string) *UpdateNamespaceInput { + s.KmsKeyId = &v + return s +} + +// SetLogExports sets the LogExports field's value. +func (s *UpdateNamespaceInput) SetLogExports(v []*string) *UpdateNamespaceInput { + s.LogExports = v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *UpdateNamespaceInput) SetNamespaceName(v string) *UpdateNamespaceInput { + s.NamespaceName = &v + return s +} + +type UpdateNamespaceOutput struct { + _ struct{} `type:"structure"` + + // A list of tag instances. + // + // Namespace is a required field + Namespace *Namespace `locationName:"namespace" 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 UpdateNamespaceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateNamespaceOutput) GoString() string { + return s.String() +} + +// SetNamespace sets the Namespace field's value. +func (s *UpdateNamespaceOutput) SetNamespace(v *Namespace) *UpdateNamespaceOutput { + s.Namespace = v + return s +} + +type UpdateSnapshotInput struct { + _ struct{} `type:"structure"` + + // The new retention period of the snapshot. + RetentionPeriod *int64 `locationName:"retentionPeriod" type:"integer"` + + // The name of the snapshot. + // + // SnapshotName is a required field + SnapshotName *string `locationName:"snapshotName" 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 UpdateSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateSnapshotInput"} + if s.SnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRetentionPeriod sets the RetentionPeriod field's value. +func (s *UpdateSnapshotInput) SetRetentionPeriod(v int64) *UpdateSnapshotInput { + s.RetentionPeriod = &v + return s +} + +// SetSnapshotName sets the SnapshotName field's value. +func (s *UpdateSnapshotInput) SetSnapshotName(v string) *UpdateSnapshotInput { + s.SnapshotName = &v + return s +} + +type UpdateSnapshotOutput struct { + _ struct{} `type:"structure"` + + // The updated snapshot object. + Snapshot *Snapshot `locationName:"snapshot" 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 UpdateSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *UpdateSnapshotOutput) SetSnapshot(v *Snapshot) *UpdateSnapshotOutput { + s.Snapshot = v + return s +} + +type UpdateUsageLimitInput struct { + _ struct{} `type:"structure"` + + // The new limit amount. For more information about this parameter. + Amount *int64 `locationName:"amount" type:"long"` + + // The new action that Amazon Redshift Serverless takes when the limit is reached. + BreachAction *string `locationName:"breachAction" type:"string" enum:"UsageLimitBreachAction"` + + // The identifier of the usage limit to update. + // + // UsageLimitId is a required field + UsageLimitId *string `locationName:"usageLimitId" 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 UpdateUsageLimitInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUsageLimitInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateUsageLimitInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateUsageLimitInput"} + if s.UsageLimitId == nil { + invalidParams.Add(request.NewErrParamRequired("UsageLimitId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAmount sets the Amount field's value. +func (s *UpdateUsageLimitInput) SetAmount(v int64) *UpdateUsageLimitInput { + s.Amount = &v + return s +} + +// SetBreachAction sets the BreachAction field's value. +func (s *UpdateUsageLimitInput) SetBreachAction(v string) *UpdateUsageLimitInput { + s.BreachAction = &v + return s +} + +// SetUsageLimitId sets the UsageLimitId field's value. +func (s *UpdateUsageLimitInput) SetUsageLimitId(v string) *UpdateUsageLimitInput { + s.UsageLimitId = &v + return s +} + +type UpdateUsageLimitOutput struct { + _ struct{} `type:"structure"` + + // The updated usage limit object. + UsageLimit *UsageLimit `locationName:"usageLimit" 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 UpdateUsageLimitOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateUsageLimitOutput) GoString() string { + return s.String() +} + +// SetUsageLimit sets the UsageLimit field's value. +func (s *UpdateUsageLimitOutput) SetUsageLimit(v *UsageLimit) *UpdateUsageLimitOutput { + s.UsageLimit = v + return s +} + +type UpdateWorkgroupInput struct { + _ struct{} `type:"structure"` + + // The new base data warehouse capacity in Redshift Processing Units (RPUs). + BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` + + // An array of parameters to set for advanced control over a database. The options + // are datestyle, enable_user_activity_logging, query_group, search_path, and + // max_query_execution_time. + ConfigParameters []*ConfigParameter `locationName:"configParameters" type:"list"` + + // The value that specifies whether to turn on enhanced virtual private cloud + // (VPC) routing, which forces Amazon Redshift Serverless to route traffic through + // your VPC. + EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + + // A value that specifies whether the workgroup can be accessible from a public + // network. + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // An array of security group IDs to associate with the workgroup. + SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` + + // An array of VPC subnet IDs to associate with the workgroup. + SubnetIds []*string `locationName:"subnetIds" type:"list"` + + // The name of the workgroup to update. + // + // WorkgroupName is a required field + WorkgroupName *string `locationName:"workgroupName" 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 UpdateWorkgroupInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateWorkgroupInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateWorkgroupInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateWorkgroupInput"} + if s.WorkgroupName == nil { + invalidParams.Add(request.NewErrParamRequired("WorkgroupName")) + } + if s.WorkgroupName != nil && len(*s.WorkgroupName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("WorkgroupName", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaseCapacity sets the BaseCapacity field's value. +func (s *UpdateWorkgroupInput) SetBaseCapacity(v int64) *UpdateWorkgroupInput { + s.BaseCapacity = &v + return s +} + +// SetConfigParameters sets the ConfigParameters field's value. +func (s *UpdateWorkgroupInput) SetConfigParameters(v []*ConfigParameter) *UpdateWorkgroupInput { + s.ConfigParameters = v + return s +} + +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *UpdateWorkgroupInput) SetEnhancedVpcRouting(v bool) *UpdateWorkgroupInput { + s.EnhancedVpcRouting = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *UpdateWorkgroupInput) SetPubliclyAccessible(v bool) *UpdateWorkgroupInput { + s.PubliclyAccessible = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *UpdateWorkgroupInput) SetSecurityGroupIds(v []*string) *UpdateWorkgroupInput { + s.SecurityGroupIds = v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *UpdateWorkgroupInput) SetSubnetIds(v []*string) *UpdateWorkgroupInput { + s.SubnetIds = v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *UpdateWorkgroupInput) SetWorkgroupName(v string) *UpdateWorkgroupInput { + s.WorkgroupName = &v + return s +} + +type UpdateWorkgroupOutput struct { + _ struct{} `type:"structure"` + + // The updated workgroup object. + // + // Workgroup is a required field + Workgroup *Workgroup `locationName:"workgroup" 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 UpdateWorkgroupOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateWorkgroupOutput) GoString() string { + return s.String() +} + +// SetWorkgroup sets the Workgroup field's value. +func (s *UpdateWorkgroupOutput) SetWorkgroup(v *Workgroup) *UpdateWorkgroupOutput { + s.Workgroup = v + return s +} + +// The usage limit object. +type UsageLimit struct { + _ struct{} `type:"structure"` + + // The limit amount. If time-based, this amount is in RPUs consumed per hour. + // If data-based, this amount is in terabytes (TB). The value must be a positive + // number. + Amount *int64 `locationName:"amount" type:"long"` + + // The action that Amazon Redshift Serverless takes when the limit is reached. + BreachAction *string `locationName:"breachAction" type:"string" enum:"UsageLimitBreachAction"` + + // The time period that the amount applies to. A weekly period begins on Sunday. + // The default is monthly. + Period *string `locationName:"period" type:"string" enum:"UsageLimitPeriod"` + + // The Amazon Resource Name (ARN) that identifies the Amazon Redshift Serverless + // resource. + ResourceArn *string `locationName:"resourceArn" type:"string"` + + // The Amazon Resource Name (ARN) of the resource associated with the usage + // limit. + UsageLimitArn *string `locationName:"usageLimitArn" type:"string"` + + // The identifier of the usage limit. + UsageLimitId *string `locationName:"usageLimitId" type:"string"` + + // The Amazon Redshift Serverless feature to limit. + UsageType *string `locationName:"usageType" type:"string" enum:"UsageLimitUsageType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UsageLimit) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UsageLimit) GoString() string { + return s.String() +} + +// SetAmount sets the Amount field's value. +func (s *UsageLimit) SetAmount(v int64) *UsageLimit { + s.Amount = &v + return s +} + +// SetBreachAction sets the BreachAction field's value. +func (s *UsageLimit) SetBreachAction(v string) *UsageLimit { + s.BreachAction = &v + return s +} + +// SetPeriod sets the Period field's value. +func (s *UsageLimit) SetPeriod(v string) *UsageLimit { + s.Period = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UsageLimit) SetResourceArn(v string) *UsageLimit { + s.ResourceArn = &v + return s +} + +// SetUsageLimitArn sets the UsageLimitArn field's value. +func (s *UsageLimit) SetUsageLimitArn(v string) *UsageLimit { + s.UsageLimitArn = &v + return s +} + +// SetUsageLimitId sets the UsageLimitId field's value. +func (s *UsageLimit) SetUsageLimitId(v string) *UsageLimit { + s.UsageLimitId = &v + return s +} + +// SetUsageType sets the UsageType field's value. +func (s *UsageLimit) SetUsageType(v string) *UsageLimit { + s.UsageType = &v + return s +} + +// The input failed to satisfy the constraints specified by an AWS service. +type ValidationException 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 ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The connection endpoint for connecting to Amazon Redshift Serverless through +// the proxy. +type VpcEndpoint struct { + _ struct{} `type:"structure"` + + // One or more network interfaces of the endpoint. Also known as an interface + // endpoint. + NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"` + + // The connection endpoint ID for connecting to Amazon Redshift Serverless. + VpcEndpointId *string `locationName:"vpcEndpointId" type:"string"` + + // The VPC identifier that the endpoint is associated with. + VpcId *string `locationName:"vpcId" 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 VpcEndpoint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcEndpoint) GoString() string { + return s.String() +} + +// SetNetworkInterfaces sets the NetworkInterfaces field's value. +func (s *VpcEndpoint) SetNetworkInterfaces(v []*NetworkInterface) *VpcEndpoint { + s.NetworkInterfaces = v + return s +} + +// SetVpcEndpointId sets the VpcEndpointId field's value. +func (s *VpcEndpoint) SetVpcEndpointId(v string) *VpcEndpoint { + s.VpcEndpointId = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *VpcEndpoint) SetVpcId(v string) *VpcEndpoint { + s.VpcId = &v + return s +} + +// Describes the members of a VPC security group. +type VpcSecurityGroupMembership struct { + _ struct{} `type:"structure"` + + // The status of the VPC security group. + Status *string `locationName:"status" type:"string"` + + // The unique identifier of the VPC security group. + VpcSecurityGroupId *string `locationName:"vpcSecurityGroupId" 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 VpcSecurityGroupMembership) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcSecurityGroupMembership) GoString() string { + return s.String() +} + +// SetStatus sets the Status field's value. +func (s *VpcSecurityGroupMembership) SetStatus(v string) *VpcSecurityGroupMembership { + s.Status = &v + return s +} + +// SetVpcSecurityGroupId sets the VpcSecurityGroupId field's value. +func (s *VpcSecurityGroupMembership) SetVpcSecurityGroupId(v string) *VpcSecurityGroupMembership { + s.VpcSecurityGroupId = &v + return s +} + +// The collection of computing resources from which an endpoint is created. +type Workgroup struct { + _ struct{} `type:"structure"` + + // The base data warehouse capacity of the workgroup in Redshift Processing + // Units (RPUs). + BaseCapacity *int64 `locationName:"baseCapacity" type:"integer"` + + // An array of parameters to set for finer control over a database. The options + // are datestyle, enable_user_activity_logging, query_group, search_path, and + // max_query_execution_time. + ConfigParameters []*ConfigParameter `locationName:"configParameters" type:"list"` + + // The creation date of the workgroup. + CreationDate *time.Time `locationName:"creationDate" type:"timestamp" timestampFormat:"iso8601"` + + // The endpoint that is created from the workgroup. + Endpoint *Endpoint `locationName:"endpoint" type:"structure"` + + // The value that specifies whether to enable enhanced virtual private cloud + // (VPC) routing, which forces Amazon Redshift Serverless to route traffic through + // your VPC. + EnhancedVpcRouting *bool `locationName:"enhancedVpcRouting" type:"boolean"` + + // The namespace the workgroup is associated with. + NamespaceName *string `locationName:"namespaceName" type:"string"` + + // A value that specifies whether the workgroup can be accessible from a public + // network + PubliclyAccessible *bool `locationName:"publiclyAccessible" type:"boolean"` + + // An array of security group IDs to associate with the workgroup. + SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` + + // The status of the workgroup. + Status *string `locationName:"status" type:"string" enum:"WorkgroupStatus"` + + // An array of subnet IDs the workgroup is associated with. + SubnetIds []*string `locationName:"subnetIds" type:"list"` + + // The Amazon Resource Name (ARN) that links to the workgroup. + WorkgroupArn *string `locationName:"workgroupArn" type:"string"` + + // The unique identifier of the workgroup. + WorkgroupId *string `locationName:"workgroupId" type:"string"` + + // The name of the workgroup. + WorkgroupName *string `locationName:"workgroupName" min:"3" 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 Workgroup) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Workgroup) GoString() string { + return s.String() +} + +// SetBaseCapacity sets the BaseCapacity field's value. +func (s *Workgroup) SetBaseCapacity(v int64) *Workgroup { + s.BaseCapacity = &v + return s +} + +// SetConfigParameters sets the ConfigParameters field's value. +func (s *Workgroup) SetConfigParameters(v []*ConfigParameter) *Workgroup { + s.ConfigParameters = v + return s +} + +// SetCreationDate sets the CreationDate field's value. +func (s *Workgroup) SetCreationDate(v time.Time) *Workgroup { + s.CreationDate = &v + return s +} + +// SetEndpoint sets the Endpoint field's value. +func (s *Workgroup) SetEndpoint(v *Endpoint) *Workgroup { + s.Endpoint = v + return s +} + +// SetEnhancedVpcRouting sets the EnhancedVpcRouting field's value. +func (s *Workgroup) SetEnhancedVpcRouting(v bool) *Workgroup { + s.EnhancedVpcRouting = &v + return s +} + +// SetNamespaceName sets the NamespaceName field's value. +func (s *Workgroup) SetNamespaceName(v string) *Workgroup { + s.NamespaceName = &v + return s +} + +// SetPubliclyAccessible sets the PubliclyAccessible field's value. +func (s *Workgroup) SetPubliclyAccessible(v bool) *Workgroup { + s.PubliclyAccessible = &v + return s +} + +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *Workgroup) SetSecurityGroupIds(v []*string) *Workgroup { + s.SecurityGroupIds = v + return s +} + +// SetStatus sets the Status field's value. +func (s *Workgroup) SetStatus(v string) *Workgroup { + s.Status = &v + return s +} + +// SetSubnetIds sets the SubnetIds field's value. +func (s *Workgroup) SetSubnetIds(v []*string) *Workgroup { + s.SubnetIds = v + return s +} + +// SetWorkgroupArn sets the WorkgroupArn field's value. +func (s *Workgroup) SetWorkgroupArn(v string) *Workgroup { + s.WorkgroupArn = &v + return s +} + +// SetWorkgroupId sets the WorkgroupId field's value. +func (s *Workgroup) SetWorkgroupId(v string) *Workgroup { + s.WorkgroupId = &v + return s +} + +// SetWorkgroupName sets the WorkgroupName field's value. +func (s *Workgroup) SetWorkgroupName(v string) *Workgroup { + s.WorkgroupName = &v + return s +} + +const ( + // LogExportUseractivitylog is a LogExport enum value + LogExportUseractivitylog = "useractivitylog" + + // LogExportUserlog is a LogExport enum value + LogExportUserlog = "userlog" + + // LogExportConnectionlog is a LogExport enum value + LogExportConnectionlog = "connectionlog" +) + +// LogExport_Values returns all elements of the LogExport enum +func LogExport_Values() []string { + return []string{ + LogExportUseractivitylog, + LogExportUserlog, + LogExportConnectionlog, + } +} + +const ( + // NamespaceStatusAvailable is a NamespaceStatus enum value + NamespaceStatusAvailable = "AVAILABLE" + + // NamespaceStatusModifying is a NamespaceStatus enum value + NamespaceStatusModifying = "MODIFYING" + + // NamespaceStatusDeleting is a NamespaceStatus enum value + NamespaceStatusDeleting = "DELETING" +) + +// NamespaceStatus_Values returns all elements of the NamespaceStatus enum +func NamespaceStatus_Values() []string { + return []string{ + NamespaceStatusAvailable, + NamespaceStatusModifying, + NamespaceStatusDeleting, + } +} + +const ( + // SnapshotStatusAvailable is a SnapshotStatus enum value + SnapshotStatusAvailable = "AVAILABLE" + + // SnapshotStatusCreating is a SnapshotStatus enum value + SnapshotStatusCreating = "CREATING" + + // SnapshotStatusDeleted is a SnapshotStatus enum value + SnapshotStatusDeleted = "DELETED" + + // SnapshotStatusCancelled is a SnapshotStatus enum value + SnapshotStatusCancelled = "CANCELLED" + + // SnapshotStatusFailed is a SnapshotStatus enum value + SnapshotStatusFailed = "FAILED" + + // SnapshotStatusCopying is a SnapshotStatus enum value + SnapshotStatusCopying = "COPYING" +) + +// SnapshotStatus_Values returns all elements of the SnapshotStatus enum +func SnapshotStatus_Values() []string { + return []string{ + SnapshotStatusAvailable, + SnapshotStatusCreating, + SnapshotStatusDeleted, + SnapshotStatusCancelled, + SnapshotStatusFailed, + SnapshotStatusCopying, + } +} + +const ( + // UsageLimitBreachActionLog is a UsageLimitBreachAction enum value + UsageLimitBreachActionLog = "log" + + // UsageLimitBreachActionEmitMetric is a UsageLimitBreachAction enum value + UsageLimitBreachActionEmitMetric = "emit-metric" + + // UsageLimitBreachActionDeactivate is a UsageLimitBreachAction enum value + UsageLimitBreachActionDeactivate = "deactivate" +) + +// UsageLimitBreachAction_Values returns all elements of the UsageLimitBreachAction enum +func UsageLimitBreachAction_Values() []string { + return []string{ + UsageLimitBreachActionLog, + UsageLimitBreachActionEmitMetric, + UsageLimitBreachActionDeactivate, + } +} + +const ( + // UsageLimitPeriodDaily is a UsageLimitPeriod enum value + UsageLimitPeriodDaily = "daily" + + // UsageLimitPeriodWeekly is a UsageLimitPeriod enum value + UsageLimitPeriodWeekly = "weekly" + + // UsageLimitPeriodMonthly is a UsageLimitPeriod enum value + UsageLimitPeriodMonthly = "monthly" +) + +// UsageLimitPeriod_Values returns all elements of the UsageLimitPeriod enum +func UsageLimitPeriod_Values() []string { + return []string{ + UsageLimitPeriodDaily, + UsageLimitPeriodWeekly, + UsageLimitPeriodMonthly, + } +} + +const ( + // UsageLimitUsageTypeServerlessCompute is a UsageLimitUsageType enum value + UsageLimitUsageTypeServerlessCompute = "serverless-compute" + + // UsageLimitUsageTypeCrossRegionDatasharing is a UsageLimitUsageType enum value + UsageLimitUsageTypeCrossRegionDatasharing = "cross-region-datasharing" +) + +// UsageLimitUsageType_Values returns all elements of the UsageLimitUsageType enum +func UsageLimitUsageType_Values() []string { + return []string{ + UsageLimitUsageTypeServerlessCompute, + UsageLimitUsageTypeCrossRegionDatasharing, + } +} + +const ( + // WorkgroupStatusCreating is a WorkgroupStatus enum value + WorkgroupStatusCreating = "CREATING" + + // WorkgroupStatusAvailable is a WorkgroupStatus enum value + WorkgroupStatusAvailable = "AVAILABLE" + + // WorkgroupStatusModifying is a WorkgroupStatus enum value + WorkgroupStatusModifying = "MODIFYING" + + // WorkgroupStatusDeleting is a WorkgroupStatus enum value + WorkgroupStatusDeleting = "DELETING" +) + +// WorkgroupStatus_Values returns all elements of the WorkgroupStatus enum +func WorkgroupStatus_Values() []string { + return []string{ + WorkgroupStatusCreating, + WorkgroupStatusAvailable, + WorkgroupStatusModifying, + WorkgroupStatusDeleting, + } +} diff --git a/service/redshiftserverless/doc.go b/service/redshiftserverless/doc.go new file mode 100644 index 00000000000..d1541d1e952 --- /dev/null +++ b/service/redshiftserverless/doc.go @@ -0,0 +1,46 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package redshiftserverless provides the client and types for making API +// requests to Redshift Serverless. +// +// This is prerelease documentation for Amazon Redshift Serverless, which is +// in preview release. The documentation and the feature are both subject to +// change. We recommend that you use this feature only in test environments, +// and not in production environments. For preview terms and conditions, see +// Beta Service Participation in Amazon Web Services Service Terms (https://docs.aws.amazon.com/https:/aws.amazon.com/service-terms). +// +// This is an interface reference for Amazon Redshift Serverless. It contains +// documentation for one of the programming or command line interfaces you can +// use to manage Amazon Redshift Serverless. +// +// Amazon Redshift Serverless automatically provisions data warehouse capacity +// and intelligently scales the underlying resources based on workload demands. +// Amazon Redshift Serverless adjusts capacity in seconds to deliver consistently +// high performance and simplified operations for even the most demanding and +// volatile workloads. Amazon Redshift Serverless lets you focus on using your +// data to acquire new insights for your business and customers. +// +// To learn more about Amazon Redshift Serverless, see What is Amazon Redshift +// Serverless (https://docs.aws.amazon.com/redshift/latest/mgmt/serverless-whatis.html). +// +// See https://docs.aws.amazon.com/goto/WebAPI/redshiftserverless-2021-04-21 for more information on this service. +// +// See redshiftserverless package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/redshiftserverless/ +// +// Using the Client +// +// To contact Redshift Serverless 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 Redshift Serverless client RedshiftServerless for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/redshiftserverless/#New +package redshiftserverless diff --git a/service/redshiftserverless/errors.go b/service/redshiftserverless/errors.go new file mode 100644 index 00000000000..79aa2ea94ef --- /dev/null +++ b/service/redshiftserverless/errors.go @@ -0,0 +1,84 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package redshiftserverless + +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 submitted action has conflicts. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInsufficientCapacityException for service response error code + // "InsufficientCapacityException". + // + // There is an insufficient capacity to perform the action. + ErrCodeInsufficientCapacityException = "InsufficientCapacityException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // The request processing has failed because of an unknown error, exception + // or failure. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeInvalidPaginationException for service response error code + // "InvalidPaginationException". + // + // The provided pagination token is invalid. + ErrCodeInvalidPaginationException = "InvalidPaginationException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource could not be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // The service limit was exceeded. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // The request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeTooManyTagsException for service response error code + // "TooManyTagsException". + // + // The request exceeded the number of tags allowed for a resource. + ErrCodeTooManyTagsException = "TooManyTagsException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input failed to satisfy the constraints specified by an AWS service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InsufficientCapacityException": newErrorInsufficientCapacityException, + "InternalServerException": newErrorInternalServerException, + "InvalidPaginationException": newErrorInvalidPaginationException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "TooManyTagsException": newErrorTooManyTagsException, + "ValidationException": newErrorValidationException, +} diff --git a/service/redshiftserverless/redshiftserverlessiface/interface.go b/service/redshiftserverless/redshiftserverlessiface/interface.go new file mode 100644 index 00000000000..0006e8e5c3e --- /dev/null +++ b/service/redshiftserverless/redshiftserverlessiface/interface.go @@ -0,0 +1,230 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package redshiftserverlessiface provides an interface to enable mocking the Redshift Serverless 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 redshiftserverlessiface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/redshiftserverless" +) + +// RedshiftServerlessAPI provides an interface to enable mocking the +// redshiftserverless.RedshiftServerless 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 +// // Redshift Serverless. +// func myFunc(svc redshiftserverlessiface.RedshiftServerlessAPI) bool { +// // Make svc.ConvertRecoveryPointToSnapshot request +// } +// +// func main() { +// sess := session.New() +// svc := redshiftserverless.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockRedshiftServerlessClient struct { +// redshiftserverlessiface.RedshiftServerlessAPI +// } +// func (m *mockRedshiftServerlessClient) ConvertRecoveryPointToSnapshot(input *redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockRedshiftServerlessClient{} +// +// 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 RedshiftServerlessAPI interface { + ConvertRecoveryPointToSnapshot(*redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error) + ConvertRecoveryPointToSnapshotWithContext(aws.Context, *redshiftserverless.ConvertRecoveryPointToSnapshotInput, ...request.Option) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error) + ConvertRecoveryPointToSnapshotRequest(*redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*request.Request, *redshiftserverless.ConvertRecoveryPointToSnapshotOutput) + + CreateEndpointAccess(*redshiftserverless.CreateEndpointAccessInput) (*redshiftserverless.CreateEndpointAccessOutput, error) + CreateEndpointAccessWithContext(aws.Context, *redshiftserverless.CreateEndpointAccessInput, ...request.Option) (*redshiftserverless.CreateEndpointAccessOutput, error) + CreateEndpointAccessRequest(*redshiftserverless.CreateEndpointAccessInput) (*request.Request, *redshiftserverless.CreateEndpointAccessOutput) + + CreateNamespace(*redshiftserverless.CreateNamespaceInput) (*redshiftserverless.CreateNamespaceOutput, error) + CreateNamespaceWithContext(aws.Context, *redshiftserverless.CreateNamespaceInput, ...request.Option) (*redshiftserverless.CreateNamespaceOutput, error) + CreateNamespaceRequest(*redshiftserverless.CreateNamespaceInput) (*request.Request, *redshiftserverless.CreateNamespaceOutput) + + CreateSnapshot(*redshiftserverless.CreateSnapshotInput) (*redshiftserverless.CreateSnapshotOutput, error) + CreateSnapshotWithContext(aws.Context, *redshiftserverless.CreateSnapshotInput, ...request.Option) (*redshiftserverless.CreateSnapshotOutput, error) + CreateSnapshotRequest(*redshiftserverless.CreateSnapshotInput) (*request.Request, *redshiftserverless.CreateSnapshotOutput) + + CreateUsageLimit(*redshiftserverless.CreateUsageLimitInput) (*redshiftserverless.CreateUsageLimitOutput, error) + CreateUsageLimitWithContext(aws.Context, *redshiftserverless.CreateUsageLimitInput, ...request.Option) (*redshiftserverless.CreateUsageLimitOutput, error) + CreateUsageLimitRequest(*redshiftserverless.CreateUsageLimitInput) (*request.Request, *redshiftserverless.CreateUsageLimitOutput) + + CreateWorkgroup(*redshiftserverless.CreateWorkgroupInput) (*redshiftserverless.CreateWorkgroupOutput, error) + CreateWorkgroupWithContext(aws.Context, *redshiftserverless.CreateWorkgroupInput, ...request.Option) (*redshiftserverless.CreateWorkgroupOutput, error) + CreateWorkgroupRequest(*redshiftserverless.CreateWorkgroupInput) (*request.Request, *redshiftserverless.CreateWorkgroupOutput) + + DeleteEndpointAccess(*redshiftserverless.DeleteEndpointAccessInput) (*redshiftserverless.DeleteEndpointAccessOutput, error) + DeleteEndpointAccessWithContext(aws.Context, *redshiftserverless.DeleteEndpointAccessInput, ...request.Option) (*redshiftserverless.DeleteEndpointAccessOutput, error) + DeleteEndpointAccessRequest(*redshiftserverless.DeleteEndpointAccessInput) (*request.Request, *redshiftserverless.DeleteEndpointAccessOutput) + + DeleteNamespace(*redshiftserverless.DeleteNamespaceInput) (*redshiftserverless.DeleteNamespaceOutput, error) + DeleteNamespaceWithContext(aws.Context, *redshiftserverless.DeleteNamespaceInput, ...request.Option) (*redshiftserverless.DeleteNamespaceOutput, error) + DeleteNamespaceRequest(*redshiftserverless.DeleteNamespaceInput) (*request.Request, *redshiftserverless.DeleteNamespaceOutput) + + DeleteResourcePolicy(*redshiftserverless.DeleteResourcePolicyInput) (*redshiftserverless.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyWithContext(aws.Context, *redshiftserverless.DeleteResourcePolicyInput, ...request.Option) (*redshiftserverless.DeleteResourcePolicyOutput, error) + DeleteResourcePolicyRequest(*redshiftserverless.DeleteResourcePolicyInput) (*request.Request, *redshiftserverless.DeleteResourcePolicyOutput) + + DeleteSnapshot(*redshiftserverless.DeleteSnapshotInput) (*redshiftserverless.DeleteSnapshotOutput, error) + DeleteSnapshotWithContext(aws.Context, *redshiftserverless.DeleteSnapshotInput, ...request.Option) (*redshiftserverless.DeleteSnapshotOutput, error) + DeleteSnapshotRequest(*redshiftserverless.DeleteSnapshotInput) (*request.Request, *redshiftserverless.DeleteSnapshotOutput) + + DeleteUsageLimit(*redshiftserverless.DeleteUsageLimitInput) (*redshiftserverless.DeleteUsageLimitOutput, error) + DeleteUsageLimitWithContext(aws.Context, *redshiftserverless.DeleteUsageLimitInput, ...request.Option) (*redshiftserverless.DeleteUsageLimitOutput, error) + DeleteUsageLimitRequest(*redshiftserverless.DeleteUsageLimitInput) (*request.Request, *redshiftserverless.DeleteUsageLimitOutput) + + DeleteWorkgroup(*redshiftserverless.DeleteWorkgroupInput) (*redshiftserverless.DeleteWorkgroupOutput, error) + DeleteWorkgroupWithContext(aws.Context, *redshiftserverless.DeleteWorkgroupInput, ...request.Option) (*redshiftserverless.DeleteWorkgroupOutput, error) + DeleteWorkgroupRequest(*redshiftserverless.DeleteWorkgroupInput) (*request.Request, *redshiftserverless.DeleteWorkgroupOutput) + + GetCredentials(*redshiftserverless.GetCredentialsInput) (*redshiftserverless.GetCredentialsOutput, error) + GetCredentialsWithContext(aws.Context, *redshiftserverless.GetCredentialsInput, ...request.Option) (*redshiftserverless.GetCredentialsOutput, error) + GetCredentialsRequest(*redshiftserverless.GetCredentialsInput) (*request.Request, *redshiftserverless.GetCredentialsOutput) + + GetEndpointAccess(*redshiftserverless.GetEndpointAccessInput) (*redshiftserverless.GetEndpointAccessOutput, error) + GetEndpointAccessWithContext(aws.Context, *redshiftserverless.GetEndpointAccessInput, ...request.Option) (*redshiftserverless.GetEndpointAccessOutput, error) + GetEndpointAccessRequest(*redshiftserverless.GetEndpointAccessInput) (*request.Request, *redshiftserverless.GetEndpointAccessOutput) + + GetNamespace(*redshiftserverless.GetNamespaceInput) (*redshiftserverless.GetNamespaceOutput, error) + GetNamespaceWithContext(aws.Context, *redshiftserverless.GetNamespaceInput, ...request.Option) (*redshiftserverless.GetNamespaceOutput, error) + GetNamespaceRequest(*redshiftserverless.GetNamespaceInput) (*request.Request, *redshiftserverless.GetNamespaceOutput) + + GetRecoveryPoint(*redshiftserverless.GetRecoveryPointInput) (*redshiftserverless.GetRecoveryPointOutput, error) + GetRecoveryPointWithContext(aws.Context, *redshiftserverless.GetRecoveryPointInput, ...request.Option) (*redshiftserverless.GetRecoveryPointOutput, error) + GetRecoveryPointRequest(*redshiftserverless.GetRecoveryPointInput) (*request.Request, *redshiftserverless.GetRecoveryPointOutput) + + GetResourcePolicy(*redshiftserverless.GetResourcePolicyInput) (*redshiftserverless.GetResourcePolicyOutput, error) + GetResourcePolicyWithContext(aws.Context, *redshiftserverless.GetResourcePolicyInput, ...request.Option) (*redshiftserverless.GetResourcePolicyOutput, error) + GetResourcePolicyRequest(*redshiftserverless.GetResourcePolicyInput) (*request.Request, *redshiftserverless.GetResourcePolicyOutput) + + GetSnapshot(*redshiftserverless.GetSnapshotInput) (*redshiftserverless.GetSnapshotOutput, error) + GetSnapshotWithContext(aws.Context, *redshiftserverless.GetSnapshotInput, ...request.Option) (*redshiftserverless.GetSnapshotOutput, error) + GetSnapshotRequest(*redshiftserverless.GetSnapshotInput) (*request.Request, *redshiftserverless.GetSnapshotOutput) + + GetUsageLimit(*redshiftserverless.GetUsageLimitInput) (*redshiftserverless.GetUsageLimitOutput, error) + GetUsageLimitWithContext(aws.Context, *redshiftserverless.GetUsageLimitInput, ...request.Option) (*redshiftserverless.GetUsageLimitOutput, error) + GetUsageLimitRequest(*redshiftserverless.GetUsageLimitInput) (*request.Request, *redshiftserverless.GetUsageLimitOutput) + + GetWorkgroup(*redshiftserverless.GetWorkgroupInput) (*redshiftserverless.GetWorkgroupOutput, error) + GetWorkgroupWithContext(aws.Context, *redshiftserverless.GetWorkgroupInput, ...request.Option) (*redshiftserverless.GetWorkgroupOutput, error) + GetWorkgroupRequest(*redshiftserverless.GetWorkgroupInput) (*request.Request, *redshiftserverless.GetWorkgroupOutput) + + ListEndpointAccess(*redshiftserverless.ListEndpointAccessInput) (*redshiftserverless.ListEndpointAccessOutput, error) + ListEndpointAccessWithContext(aws.Context, *redshiftserverless.ListEndpointAccessInput, ...request.Option) (*redshiftserverless.ListEndpointAccessOutput, error) + ListEndpointAccessRequest(*redshiftserverless.ListEndpointAccessInput) (*request.Request, *redshiftserverless.ListEndpointAccessOutput) + + ListEndpointAccessPages(*redshiftserverless.ListEndpointAccessInput, func(*redshiftserverless.ListEndpointAccessOutput, bool) bool) error + ListEndpointAccessPagesWithContext(aws.Context, *redshiftserverless.ListEndpointAccessInput, func(*redshiftserverless.ListEndpointAccessOutput, bool) bool, ...request.Option) error + + ListNamespaces(*redshiftserverless.ListNamespacesInput) (*redshiftserverless.ListNamespacesOutput, error) + ListNamespacesWithContext(aws.Context, *redshiftserverless.ListNamespacesInput, ...request.Option) (*redshiftserverless.ListNamespacesOutput, error) + ListNamespacesRequest(*redshiftserverless.ListNamespacesInput) (*request.Request, *redshiftserverless.ListNamespacesOutput) + + ListNamespacesPages(*redshiftserverless.ListNamespacesInput, func(*redshiftserverless.ListNamespacesOutput, bool) bool) error + ListNamespacesPagesWithContext(aws.Context, *redshiftserverless.ListNamespacesInput, func(*redshiftserverless.ListNamespacesOutput, bool) bool, ...request.Option) error + + ListRecoveryPoints(*redshiftserverless.ListRecoveryPointsInput) (*redshiftserverless.ListRecoveryPointsOutput, error) + ListRecoveryPointsWithContext(aws.Context, *redshiftserverless.ListRecoveryPointsInput, ...request.Option) (*redshiftserverless.ListRecoveryPointsOutput, error) + ListRecoveryPointsRequest(*redshiftserverless.ListRecoveryPointsInput) (*request.Request, *redshiftserverless.ListRecoveryPointsOutput) + + ListRecoveryPointsPages(*redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool) error + ListRecoveryPointsPagesWithContext(aws.Context, *redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool, ...request.Option) error + + ListSnapshots(*redshiftserverless.ListSnapshotsInput) (*redshiftserverless.ListSnapshotsOutput, error) + ListSnapshotsWithContext(aws.Context, *redshiftserverless.ListSnapshotsInput, ...request.Option) (*redshiftserverless.ListSnapshotsOutput, error) + ListSnapshotsRequest(*redshiftserverless.ListSnapshotsInput) (*request.Request, *redshiftserverless.ListSnapshotsOutput) + + ListSnapshotsPages(*redshiftserverless.ListSnapshotsInput, func(*redshiftserverless.ListSnapshotsOutput, bool) bool) error + ListSnapshotsPagesWithContext(aws.Context, *redshiftserverless.ListSnapshotsInput, func(*redshiftserverless.ListSnapshotsOutput, bool) bool, ...request.Option) error + + ListTagsForResource(*redshiftserverless.ListTagsForResourceInput) (*redshiftserverless.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *redshiftserverless.ListTagsForResourceInput, ...request.Option) (*redshiftserverless.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*redshiftserverless.ListTagsForResourceInput) (*request.Request, *redshiftserverless.ListTagsForResourceOutput) + + ListUsageLimits(*redshiftserverless.ListUsageLimitsInput) (*redshiftserverless.ListUsageLimitsOutput, error) + ListUsageLimitsWithContext(aws.Context, *redshiftserverless.ListUsageLimitsInput, ...request.Option) (*redshiftserverless.ListUsageLimitsOutput, error) + ListUsageLimitsRequest(*redshiftserverless.ListUsageLimitsInput) (*request.Request, *redshiftserverless.ListUsageLimitsOutput) + + ListUsageLimitsPages(*redshiftserverless.ListUsageLimitsInput, func(*redshiftserverless.ListUsageLimitsOutput, bool) bool) error + ListUsageLimitsPagesWithContext(aws.Context, *redshiftserverless.ListUsageLimitsInput, func(*redshiftserverless.ListUsageLimitsOutput, bool) bool, ...request.Option) error + + ListWorkgroups(*redshiftserverless.ListWorkgroupsInput) (*redshiftserverless.ListWorkgroupsOutput, error) + ListWorkgroupsWithContext(aws.Context, *redshiftserverless.ListWorkgroupsInput, ...request.Option) (*redshiftserverless.ListWorkgroupsOutput, error) + ListWorkgroupsRequest(*redshiftserverless.ListWorkgroupsInput) (*request.Request, *redshiftserverless.ListWorkgroupsOutput) + + ListWorkgroupsPages(*redshiftserverless.ListWorkgroupsInput, func(*redshiftserverless.ListWorkgroupsOutput, bool) bool) error + ListWorkgroupsPagesWithContext(aws.Context, *redshiftserverless.ListWorkgroupsInput, func(*redshiftserverless.ListWorkgroupsOutput, bool) bool, ...request.Option) error + + PutResourcePolicy(*redshiftserverless.PutResourcePolicyInput) (*redshiftserverless.PutResourcePolicyOutput, error) + PutResourcePolicyWithContext(aws.Context, *redshiftserverless.PutResourcePolicyInput, ...request.Option) (*redshiftserverless.PutResourcePolicyOutput, error) + PutResourcePolicyRequest(*redshiftserverless.PutResourcePolicyInput) (*request.Request, *redshiftserverless.PutResourcePolicyOutput) + + RestoreFromRecoveryPoint(*redshiftserverless.RestoreFromRecoveryPointInput) (*redshiftserverless.RestoreFromRecoveryPointOutput, error) + RestoreFromRecoveryPointWithContext(aws.Context, *redshiftserverless.RestoreFromRecoveryPointInput, ...request.Option) (*redshiftserverless.RestoreFromRecoveryPointOutput, error) + RestoreFromRecoveryPointRequest(*redshiftserverless.RestoreFromRecoveryPointInput) (*request.Request, *redshiftserverless.RestoreFromRecoveryPointOutput) + + RestoreFromSnapshot(*redshiftserverless.RestoreFromSnapshotInput) (*redshiftserverless.RestoreFromSnapshotOutput, error) + RestoreFromSnapshotWithContext(aws.Context, *redshiftserverless.RestoreFromSnapshotInput, ...request.Option) (*redshiftserverless.RestoreFromSnapshotOutput, error) + RestoreFromSnapshotRequest(*redshiftserverless.RestoreFromSnapshotInput) (*request.Request, *redshiftserverless.RestoreFromSnapshotOutput) + + TagResource(*redshiftserverless.TagResourceInput) (*redshiftserverless.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *redshiftserverless.TagResourceInput, ...request.Option) (*redshiftserverless.TagResourceOutput, error) + TagResourceRequest(*redshiftserverless.TagResourceInput) (*request.Request, *redshiftserverless.TagResourceOutput) + + UntagResource(*redshiftserverless.UntagResourceInput) (*redshiftserverless.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *redshiftserverless.UntagResourceInput, ...request.Option) (*redshiftserverless.UntagResourceOutput, error) + UntagResourceRequest(*redshiftserverless.UntagResourceInput) (*request.Request, *redshiftserverless.UntagResourceOutput) + + UpdateEndpointAccess(*redshiftserverless.UpdateEndpointAccessInput) (*redshiftserverless.UpdateEndpointAccessOutput, error) + UpdateEndpointAccessWithContext(aws.Context, *redshiftserverless.UpdateEndpointAccessInput, ...request.Option) (*redshiftserverless.UpdateEndpointAccessOutput, error) + UpdateEndpointAccessRequest(*redshiftserverless.UpdateEndpointAccessInput) (*request.Request, *redshiftserverless.UpdateEndpointAccessOutput) + + UpdateNamespace(*redshiftserverless.UpdateNamespaceInput) (*redshiftserverless.UpdateNamespaceOutput, error) + UpdateNamespaceWithContext(aws.Context, *redshiftserverless.UpdateNamespaceInput, ...request.Option) (*redshiftserverless.UpdateNamespaceOutput, error) + UpdateNamespaceRequest(*redshiftserverless.UpdateNamespaceInput) (*request.Request, *redshiftserverless.UpdateNamespaceOutput) + + UpdateSnapshot(*redshiftserverless.UpdateSnapshotInput) (*redshiftserverless.UpdateSnapshotOutput, error) + UpdateSnapshotWithContext(aws.Context, *redshiftserverless.UpdateSnapshotInput, ...request.Option) (*redshiftserverless.UpdateSnapshotOutput, error) + UpdateSnapshotRequest(*redshiftserverless.UpdateSnapshotInput) (*request.Request, *redshiftserverless.UpdateSnapshotOutput) + + UpdateUsageLimit(*redshiftserverless.UpdateUsageLimitInput) (*redshiftserverless.UpdateUsageLimitOutput, error) + UpdateUsageLimitWithContext(aws.Context, *redshiftserverless.UpdateUsageLimitInput, ...request.Option) (*redshiftserverless.UpdateUsageLimitOutput, error) + UpdateUsageLimitRequest(*redshiftserverless.UpdateUsageLimitInput) (*request.Request, *redshiftserverless.UpdateUsageLimitOutput) + + UpdateWorkgroup(*redshiftserverless.UpdateWorkgroupInput) (*redshiftserverless.UpdateWorkgroupOutput, error) + UpdateWorkgroupWithContext(aws.Context, *redshiftserverless.UpdateWorkgroupInput, ...request.Option) (*redshiftserverless.UpdateWorkgroupOutput, error) + UpdateWorkgroupRequest(*redshiftserverless.UpdateWorkgroupInput) (*request.Request, *redshiftserverless.UpdateWorkgroupOutput) +} + +var _ RedshiftServerlessAPI = (*redshiftserverless.RedshiftServerless)(nil) diff --git a/service/redshiftserverless/service.go b/service/redshiftserverless/service.go new file mode 100644 index 00000000000..9ce6f8281fe --- /dev/null +++ b/service/redshiftserverless/service.go @@ -0,0 +1,107 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package redshiftserverless + +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" +) + +// RedshiftServerless provides the API operation methods for making requests to +// Redshift Serverless. See this package's package overview docs +// for details on the service. +// +// RedshiftServerless methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type RedshiftServerless 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 = "RedshiftServerless" // Name of service. + EndpointsID = "redshift-serverless" // ID to lookup a service endpoint with. + ServiceID = "RedshiftServerless" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the RedshiftServerless 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 RedshiftServerless client from just a session. +// svc := redshiftserverless.New(mySession) +// +// // Create a RedshiftServerless client with additional configuration +// svc := redshiftserverless.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *RedshiftServerless { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "redshift-serverless" + } + 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) *RedshiftServerless { + svc := &RedshiftServerless{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2021-04-21", + ResolvedRegion: resolvedRegion, + JSONVersion: "1.1", + TargetPrefix: "RedshiftServerless", + }, + 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 RedshiftServerless operation and runs any +// custom request initialization. +func (c *RedshiftServerless) 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/secretsmanager/api.go b/service/secretsmanager/api.go index 1dcc03e86ca..a0c37df7490 100644 --- a/service/secretsmanager/api.go +++ b/service/secretsmanager/api.go @@ -1120,6 +1120,10 @@ func (c *SecretsManager) ListSecretsRequest(input *ListSecretsInput) (req *reque // account, not including secrets that are marked for deletion. To see secrets // marked for deletion, use the Secrets Manager console. // +// ListSecrets is eventually consistent, however it might not reflect changes +// from the last five minutes. To get the latest information for a specific +// secret, use DescribeSecret. +// // To list the versions of a secret, use ListSecretVersionIds. // // To get the secret value from SecretString or SecretBinary, call GetSecretValue. @@ -1400,11 +1404,11 @@ func (c *SecretsManager) PutSecretValueRequest(input *PutSecretValueInput) (req // to this version, then Secrets Manager also automatically moves the staging // label AWSPREVIOUS to the version that AWSCURRENT was removed from. // -// This operation is idempotent. If a version with a VersionId with the same -// value as the ClientRequestToken parameter already exists, and you specify -// the same secret data, the operation succeeds but does nothing. However, if -// the secret data is different, then the operation fails because you can't -// modify an existing version; you can only create new ones. +// This operation is idempotent. If you call this operation with a ClientRequestToken +// that matches an existing version's VersionId, and you specify the same secret +// data, the operation succeeds but does nothing. However, if the secret data +// is different, then the operation fails because you can't modify an existing +// version; you can only create new ones. // // Required permissions: secretsmanager:PutSecretValue. 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) @@ -2313,9 +2317,9 @@ func (c *SecretsManager) UpdateSecretRequest(input *UpdateSecretInput) (req *req // Secrets Manager automatically attaches the staging label AWSCURRENT to the // new version. // -// If you call this operation with a VersionId that matches an existing version's -// ClientRequestToken, the operation results in an error. You can't modify an -// existing version, you can only create a new version. To remove a version, +// If you call this operation with a ClientRequestToken that matches an existing +// version's VersionId, the operation results in an error. You can't modify +// an existing version, you can only create a new version. To remove a version, // remove all staging labels from it. See UpdateSecretVersionStage. // // If you don't specify an KMS encryption key, Secrets Manager uses the Amazon diff --git a/service/securityhub/api.go b/service/securityhub/api.go index f4afd034d7f..41d5fd7644c 100644 --- a/service/securityhub/api.go +++ b/service/securityhub/api.go @@ -9698,6 +9698,254 @@ func (s *AwsCertificateManagerCertificateResourceRecord) SetValue(v string) *Aws return s } +// Nests a stack as a resource in a top-level template. Nested stacks are stacks +// created as resources for another stack. +type AwsCloudFormationStackDetails struct { + _ struct{} `type:"structure"` + + // The capabilities allowed in the stack. + Capabilities []*string `type:"list"` + + // The time at which the stack was created. + CreationTime *string `type:"string"` + + // A user-defined description associated with the stack. + Description *string `type:"string"` + + // Boolean to enable or disable rollback on stack creation failures. + DisableRollback *bool `type:"boolean"` + + // Information about whether a stack's actual configuration differs, or has + // drifted, from its expected configuration, as defined in the stack template + // and any values specified as template parameters. + DriftInformation *AwsCloudFormationStackDriftInformationDetails `type:"structure"` + + // Whether termination protection is enabled for the stack. + EnableTerminationProtection *bool `type:"boolean"` + + // The time the nested stack was last updated. This field will only be returned + // if the stack has been updated at least once. + LastUpdatedTime *string `type:"string"` + + // The Amazon Resource Names (ARNs) of the Amazon SNS topic to which stack-related + // events are published. + NotificationArns []*string `type:"list"` + + // A list of output structures. + Outputs []*AwsCloudFormationStackOutputsDetails `type:"list"` + + // The ARN of an IAM role that's associated with the stack. + RoleArn *string `type:"string"` + + // Unique identifier of the stack. + StackId *string `type:"string"` + + // The name associated with the stack. + StackName *string `type:"string"` + + // Current status of the stack. + StackStatus *string `type:"string"` + + // Success or failure message associated with the stack status. + StackStatusReason *string `type:"string"` + + // The length of time, in minutes, that CloudFormation waits for the nested + // stack to reach the CREATE_COMPLETE state. + TimeoutInMinutes *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackDetails) GoString() string { + return s.String() +} + +// SetCapabilities sets the Capabilities field's value. +func (s *AwsCloudFormationStackDetails) SetCapabilities(v []*string) *AwsCloudFormationStackDetails { + s.Capabilities = v + return s +} + +// SetCreationTime sets the CreationTime field's value. +func (s *AwsCloudFormationStackDetails) SetCreationTime(v string) *AwsCloudFormationStackDetails { + s.CreationTime = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsCloudFormationStackDetails) SetDescription(v string) *AwsCloudFormationStackDetails { + s.Description = &v + return s +} + +// SetDisableRollback sets the DisableRollback field's value. +func (s *AwsCloudFormationStackDetails) SetDisableRollback(v bool) *AwsCloudFormationStackDetails { + s.DisableRollback = &v + return s +} + +// SetDriftInformation sets the DriftInformation field's value. +func (s *AwsCloudFormationStackDetails) SetDriftInformation(v *AwsCloudFormationStackDriftInformationDetails) *AwsCloudFormationStackDetails { + s.DriftInformation = v + return s +} + +// SetEnableTerminationProtection sets the EnableTerminationProtection field's value. +func (s *AwsCloudFormationStackDetails) SetEnableTerminationProtection(v bool) *AwsCloudFormationStackDetails { + s.EnableTerminationProtection = &v + return s +} + +// SetLastUpdatedTime sets the LastUpdatedTime field's value. +func (s *AwsCloudFormationStackDetails) SetLastUpdatedTime(v string) *AwsCloudFormationStackDetails { + s.LastUpdatedTime = &v + return s +} + +// SetNotificationArns sets the NotificationArns field's value. +func (s *AwsCloudFormationStackDetails) SetNotificationArns(v []*string) *AwsCloudFormationStackDetails { + s.NotificationArns = v + return s +} + +// SetOutputs sets the Outputs field's value. +func (s *AwsCloudFormationStackDetails) SetOutputs(v []*AwsCloudFormationStackOutputsDetails) *AwsCloudFormationStackDetails { + s.Outputs = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *AwsCloudFormationStackDetails) SetRoleArn(v string) *AwsCloudFormationStackDetails { + s.RoleArn = &v + return s +} + +// SetStackId sets the StackId field's value. +func (s *AwsCloudFormationStackDetails) SetStackId(v string) *AwsCloudFormationStackDetails { + s.StackId = &v + return s +} + +// SetStackName sets the StackName field's value. +func (s *AwsCloudFormationStackDetails) SetStackName(v string) *AwsCloudFormationStackDetails { + s.StackName = &v + return s +} + +// SetStackStatus sets the StackStatus field's value. +func (s *AwsCloudFormationStackDetails) SetStackStatus(v string) *AwsCloudFormationStackDetails { + s.StackStatus = &v + return s +} + +// SetStackStatusReason sets the StackStatusReason field's value. +func (s *AwsCloudFormationStackDetails) SetStackStatusReason(v string) *AwsCloudFormationStackDetails { + s.StackStatusReason = &v + return s +} + +// SetTimeoutInMinutes sets the TimeoutInMinutes field's value. +func (s *AwsCloudFormationStackDetails) SetTimeoutInMinutes(v int64) *AwsCloudFormationStackDetails { + s.TimeoutInMinutes = &v + return s +} + +// Provides information about the stack's conformity to its expected template +// configuration. +type AwsCloudFormationStackDriftInformationDetails struct { + _ struct{} `type:"structure"` + + // Status of the stack's actual configuration compared to its expected template + // configuration. + StackDriftStatus *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackDriftInformationDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackDriftInformationDetails) GoString() string { + return s.String() +} + +// SetStackDriftStatus sets the StackDriftStatus field's value. +func (s *AwsCloudFormationStackDriftInformationDetails) SetStackDriftStatus(v string) *AwsCloudFormationStackDriftInformationDetails { + s.StackDriftStatus = &v + return s +} + +// Provides information about the CloudFormation stack output. +type AwsCloudFormationStackOutputsDetails struct { + _ struct{} `type:"structure"` + + // A user-defined description associated with the output. + Description *string `type:"string"` + + // The key associated with the output. + OutputKey *string `type:"string"` + + // The value associated with the output. + OutputValue *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackOutputsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFormationStackOutputsDetails) GoString() string { + return s.String() +} + +// SetDescription sets the Description field's value. +func (s *AwsCloudFormationStackOutputsDetails) SetDescription(v string) *AwsCloudFormationStackOutputsDetails { + s.Description = &v + return s +} + +// SetOutputKey sets the OutputKey field's value. +func (s *AwsCloudFormationStackOutputsDetails) SetOutputKey(v string) *AwsCloudFormationStackOutputsDetails { + s.OutputKey = &v + return s +} + +// SetOutputValue sets the OutputValue field's value. +func (s *AwsCloudFormationStackOutputsDetails) SetOutputValue(v string) *AwsCloudFormationStackOutputsDetails { + s.OutputValue = &v + return s +} + // Information about a cache behavior for the distribution. type AwsCloudFrontDistributionCacheBehavior struct { _ struct{} `type:"structure"` @@ -9740,7 +9988,7 @@ func (s *AwsCloudFrontDistributionCacheBehavior) SetViewerProtocolPolicy(v strin return s } -// Provides information about caching for the distribution. +// Provides information about caching for the CloudFront distribution. type AwsCloudFrontDistributionCacheBehaviors struct { _ struct{} `type:"structure"` @@ -9772,7 +10020,8 @@ func (s *AwsCloudFrontDistributionCacheBehaviors) SetItems(v []*AwsCloudFrontDis return s } -// Contains information about the default cache configuration for the distribution. +// Contains information about the default cache configuration for the CloudFront +// distribution. type AwsCloudFrontDistributionDefaultCacheBehavior struct { _ struct{} `type:"structure"` @@ -9814,7 +10063,7 @@ func (s *AwsCloudFrontDistributionDefaultCacheBehavior) SetViewerProtocolPolicy( return s } -// A distribution configuration. +// A CloudFront distribution configuration. type AwsCloudFrontDistributionDetails struct { _ struct{} `type:"structure"` @@ -9953,7 +10202,8 @@ func (s *AwsCloudFrontDistributionDetails) SetWebAclId(v string) *AwsCloudFrontD return s } -// A complex type that controls whether access logs are written for the distribution. +// A complex type that controls whether access logs are written for the CloudFront +// distribution. type AwsCloudFrontDistributionLogging struct { _ struct{} `type:"structure"` @@ -10013,7 +10263,91 @@ func (s *AwsCloudFrontDistributionLogging) SetPrefix(v string) *AwsCloudFrontDis return s } -// Information about an origin group for the distribution. +// A custom origin. A custom origin is any origin that is not an Amazon S3 bucket, +// with one exception. An Amazon S3 bucket that is configured with static website +// hosting (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) +// is a custom origin. +type AwsCloudFrontDistributionOriginCustomOriginConfig struct { + _ struct{} `type:"structure"` + + // The HTTP port that CloudFront uses to connect to the origin. + HttpPort *int64 `type:"integer"` + + // The HTTPS port that CloudFront uses to connect to the origin. + HttpsPort *int64 `type:"integer"` + + // Specifies how long, in seconds, CloudFront persists its connection to the + // origin. + OriginKeepaliveTimeout *int64 `type:"integer"` + + // Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to + // the origin. + OriginProtocolPolicy *string `type:"string"` + + // Specifies how long, in seconds, CloudFront waits for a response from the + // origin. + OriginReadTimeout *int64 `type:"integer"` + + // Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting + // to your origin over HTTPS. + OriginSslProtocols *AwsCloudFrontDistributionOriginSslProtocols `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 AwsCloudFrontDistributionOriginCustomOriginConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFrontDistributionOriginCustomOriginConfig) GoString() string { + return s.String() +} + +// SetHttpPort sets the HttpPort field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetHttpPort(v int64) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.HttpPort = &v + return s +} + +// SetHttpsPort sets the HttpsPort field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetHttpsPort(v int64) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.HttpsPort = &v + return s +} + +// SetOriginKeepaliveTimeout sets the OriginKeepaliveTimeout field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetOriginKeepaliveTimeout(v int64) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.OriginKeepaliveTimeout = &v + return s +} + +// SetOriginProtocolPolicy sets the OriginProtocolPolicy field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetOriginProtocolPolicy(v string) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.OriginProtocolPolicy = &v + return s +} + +// SetOriginReadTimeout sets the OriginReadTimeout field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetOriginReadTimeout(v int64) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.OriginReadTimeout = &v + return s +} + +// SetOriginSslProtocols sets the OriginSslProtocols field's value. +func (s *AwsCloudFrontDistributionOriginCustomOriginConfig) SetOriginSslProtocols(v *AwsCloudFrontDistributionOriginSslProtocols) *AwsCloudFrontDistributionOriginCustomOriginConfig { + s.OriginSslProtocols = v + return s +} + +// Information about an origin group for the CloudFront distribution. type AwsCloudFrontDistributionOriginGroup struct { _ struct{} `type:"structure"` @@ -10118,7 +10452,8 @@ func (s *AwsCloudFrontDistributionOriginGroupFailoverStatusCodes) SetQuantity(v return s } -// Provides information about origin groups that are associated with the distribution. +// Provides information about origin groups that are associated with the CloudFront +// distribution. type AwsCloudFrontDistributionOriginGroups struct { _ struct{} `type:"structure"` @@ -10150,12 +10485,18 @@ func (s *AwsCloudFrontDistributionOriginGroups) SetItems(v []*AwsCloudFrontDistr return s } -// A complex type that describes the S3 bucket, HTTP server (for example, a -// web server), AWS Elemental MediaStore, or other server from which CloudFront +// A complex type that describes the Amazon S3 bucket, HTTP server (for example, +// a web server), AWS Elemental MediaStore, or other server from which CloudFront // gets your files. type AwsCloudFrontDistributionOriginItem struct { _ struct{} `type:"structure"` + // An origin that is not an Amazon S3 bucket, with one exception. If the Amazon + // S3 bucket is configured with static website hosting, use this attribute. + // If the Amazon S3 bucket is not configured with static website hosting, use + // the S3OriginConfig type instead. + CustomOriginConfig *AwsCloudFrontDistributionOriginCustomOriginConfig `type:"structure"` + // Amazon S3 origins: The DNS name of the S3 bucket from which you want CloudFront // to get objects for this origin. DomainName *string `type:"string"` @@ -10190,6 +10531,12 @@ func (s AwsCloudFrontDistributionOriginItem) GoString() string { return s.String() } +// SetCustomOriginConfig sets the CustomOriginConfig field's value. +func (s *AwsCloudFrontDistributionOriginItem) SetCustomOriginConfig(v *AwsCloudFrontDistributionOriginCustomOriginConfig) *AwsCloudFrontDistributionOriginItem { + s.CustomOriginConfig = v + return s +} + // SetDomainName sets the DomainName field's value. func (s *AwsCloudFrontDistributionOriginItem) SetDomainName(v string) *AwsCloudFrontDistributionOriginItem { s.DomainName = &v @@ -10214,8 +10561,8 @@ func (s *AwsCloudFrontDistributionOriginItem) SetS3OriginConfig(v *AwsCloudFront return s } -// Information about an origin that is an S3 bucket that is not configured with -// static website hosting. +// Information about an origin that is an Amazon S3 bucket that is not configured +// with static website hosting. type AwsCloudFrontDistributionOriginS3OriginConfig struct { _ struct{} `type:"structure"` @@ -10247,8 +10594,51 @@ func (s *AwsCloudFrontDistributionOriginS3OriginConfig) SetOriginAccessIdentity( return s } +// A complex type that contains information about the SSL/TLS protocols that +// CloudFront can use when establishing an HTTPS connection with your origin. +type AwsCloudFrontDistributionOriginSslProtocols struct { + _ struct{} `type:"structure"` + + // A list that contains allowed SSL/TLS protocols for this distribution. + Items []*string `type:"list"` + + // The number of SSL/TLS protocols that you want to allow CloudFront to use + // when establishing an HTTPS connection with this origin. + Quantity *int64 `type:"integer"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFrontDistributionOriginSslProtocols) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudFrontDistributionOriginSslProtocols) GoString() string { + return s.String() +} + +// SetItems sets the Items field's value. +func (s *AwsCloudFrontDistributionOriginSslProtocols) SetItems(v []*string) *AwsCloudFrontDistributionOriginSslProtocols { + s.Items = v + return s +} + +// SetQuantity sets the Quantity field's value. +func (s *AwsCloudFrontDistributionOriginSslProtocols) SetQuantity(v int64) *AwsCloudFrontDistributionOriginSslProtocols { + s.Quantity = &v + return s +} + // A complex type that contains information about origins and origin groups -// for this distribution. +// for this CloudFront distribution. type AwsCloudFrontDistributionOrigins struct { _ struct{} `type:"structure"` @@ -10280,8 +10670,8 @@ func (s *AwsCloudFrontDistributionOrigins) SetItems(v []*AwsCloudFrontDistributi return s } -// Provides information about the TLS/SSL configuration that the distribution -// uses to communicate with viewers. +// Provides information about the TLS/SSL configuration that the CloudFront +// distribution uses to communicate with viewers. type AwsCloudFrontDistributionViewerCertificate struct { _ struct{} `type:"structure"` @@ -10539,6 +10929,291 @@ func (s *AwsCloudTrailTrailDetails) SetTrailArn(v string) *AwsCloudTrailTrailDet return s } +// Specifies an alarm and associates it with the specified metric or metric +// math expression. +type AwsCloudWatchAlarmDetails struct { + _ struct{} `type:"structure"` + + // Indicates whether actions should be executed during any changes to the alarm + // state. + ActionsEnabled *bool `type:"boolean"` + + // The list of actions, specified as Amazon Resource Names (ARNs) to execute + // when this alarm transitions into an ALARM state from any other state. + AlarmActions []*string `type:"list"` + + // The ARN of the alarm. + AlarmArn *string `type:"string"` + + // The time stamp of the last update to the alarm configuration. + AlarmConfigurationUpdatedTimestamp *string `type:"string"` + + // The description of the alarm. + AlarmDescription *string `type:"string"` + + // The name of the alarm. If you don't specify a name, CloudFront generates + // a unique physical ID and uses that ID for the alarm name. + AlarmName *string `type:"string"` + + // The arithmetic operation to use when comparing the specified statistic and + // threshold. The specified statistic value is used as the first operand. + ComparisonOperator *string `type:"string"` + + // The number of datapoints that must be breaching to trigger the alarm. + DatapointsToAlarm *int64 `type:"integer"` + + // The dimensions for the metric associated with the alarm. + Dimensions []*AwsCloudWatchAlarmDimensionsDetails `type:"list"` + + // Used only for alarms based on percentiles. If ignore, the alarm state does + // not change during periods with too few data points to be statistically significant. + // If evaluate or this parameter is not used, the alarm is always evaluated + // and possibly changes state no matter how many data points are available. + EvaluateLowSampleCountPercentile *string `type:"string"` + + // The number of periods over which data is compared to the specified threshold. + EvaluationPeriods *int64 `type:"integer"` + + // The percentile statistic for the metric associated with the alarm. + ExtendedStatistic *string `type:"string"` + + // The actions to execute when this alarm transitions to the INSUFFICIENT_DATA + // state from any other state. Each action is specified as an ARN. + InsufficientDataActions []*string `type:"list"` + + // The name of the metric associated with the alarm. This is required for an + // alarm based on a metric. For an alarm based on a math expression, you use + // Metrics instead and you can't specify MetricName. + MetricName *string `type:"string"` + + // The namespace of the metric associated with the alarm. This is required for + // an alarm based on a metric. For an alarm based on a math expression, you + // can't specify Namespace and you use Metrics instead. + Namespace *string `type:"string"` + + // The actions to execute when this alarm transitions to the OK state from any + // other state. Each action is specified as an ARN. + OkActions []*string `type:"list"` + + // The period, in seconds, over which the statistic is applied. This is required + // for an alarm based on a metric. + Period *int64 `type:"integer"` + + // The statistic for the metric associated with the alarm, other than percentile. + // For percentile statistics, use ExtendedStatistic. + // + // For an alarm based on a metric, you must specify either Statistic or ExtendedStatistic + // but not both. + // + // For an alarm based on a math expression, you can't specify Statistic. Instead, + // you use Metrics. + Statistic *string `type:"string"` + + // The value to compare with the specified statistic. + Threshold *float64 `type:"double"` + + // n an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND + // function used as the threshold for the alarm. + ThresholdMetricId *string `type:"string"` + + // Sets how this alarm is to handle missing data points. + TreatMissingData *string `type:"string"` + + // The unit of the metric associated with the alarm. + Unit *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudWatchAlarmDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudWatchAlarmDetails) GoString() string { + return s.String() +} + +// SetActionsEnabled sets the ActionsEnabled field's value. +func (s *AwsCloudWatchAlarmDetails) SetActionsEnabled(v bool) *AwsCloudWatchAlarmDetails { + s.ActionsEnabled = &v + return s +} + +// SetAlarmActions sets the AlarmActions field's value. +func (s *AwsCloudWatchAlarmDetails) SetAlarmActions(v []*string) *AwsCloudWatchAlarmDetails { + s.AlarmActions = v + return s +} + +// SetAlarmArn sets the AlarmArn field's value. +func (s *AwsCloudWatchAlarmDetails) SetAlarmArn(v string) *AwsCloudWatchAlarmDetails { + s.AlarmArn = &v + return s +} + +// SetAlarmConfigurationUpdatedTimestamp sets the AlarmConfigurationUpdatedTimestamp field's value. +func (s *AwsCloudWatchAlarmDetails) SetAlarmConfigurationUpdatedTimestamp(v string) *AwsCloudWatchAlarmDetails { + s.AlarmConfigurationUpdatedTimestamp = &v + return s +} + +// SetAlarmDescription sets the AlarmDescription field's value. +func (s *AwsCloudWatchAlarmDetails) SetAlarmDescription(v string) *AwsCloudWatchAlarmDetails { + s.AlarmDescription = &v + return s +} + +// SetAlarmName sets the AlarmName field's value. +func (s *AwsCloudWatchAlarmDetails) SetAlarmName(v string) *AwsCloudWatchAlarmDetails { + s.AlarmName = &v + return s +} + +// SetComparisonOperator sets the ComparisonOperator field's value. +func (s *AwsCloudWatchAlarmDetails) SetComparisonOperator(v string) *AwsCloudWatchAlarmDetails { + s.ComparisonOperator = &v + return s +} + +// SetDatapointsToAlarm sets the DatapointsToAlarm field's value. +func (s *AwsCloudWatchAlarmDetails) SetDatapointsToAlarm(v int64) *AwsCloudWatchAlarmDetails { + s.DatapointsToAlarm = &v + return s +} + +// SetDimensions sets the Dimensions field's value. +func (s *AwsCloudWatchAlarmDetails) SetDimensions(v []*AwsCloudWatchAlarmDimensionsDetails) *AwsCloudWatchAlarmDetails { + s.Dimensions = v + return s +} + +// SetEvaluateLowSampleCountPercentile sets the EvaluateLowSampleCountPercentile field's value. +func (s *AwsCloudWatchAlarmDetails) SetEvaluateLowSampleCountPercentile(v string) *AwsCloudWatchAlarmDetails { + s.EvaluateLowSampleCountPercentile = &v + return s +} + +// SetEvaluationPeriods sets the EvaluationPeriods field's value. +func (s *AwsCloudWatchAlarmDetails) SetEvaluationPeriods(v int64) *AwsCloudWatchAlarmDetails { + s.EvaluationPeriods = &v + return s +} + +// SetExtendedStatistic sets the ExtendedStatistic field's value. +func (s *AwsCloudWatchAlarmDetails) SetExtendedStatistic(v string) *AwsCloudWatchAlarmDetails { + s.ExtendedStatistic = &v + return s +} + +// SetInsufficientDataActions sets the InsufficientDataActions field's value. +func (s *AwsCloudWatchAlarmDetails) SetInsufficientDataActions(v []*string) *AwsCloudWatchAlarmDetails { + s.InsufficientDataActions = v + return s +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsCloudWatchAlarmDetails) SetMetricName(v string) *AwsCloudWatchAlarmDetails { + s.MetricName = &v + return s +} + +// SetNamespace sets the Namespace field's value. +func (s *AwsCloudWatchAlarmDetails) SetNamespace(v string) *AwsCloudWatchAlarmDetails { + s.Namespace = &v + return s +} + +// SetOkActions sets the OkActions field's value. +func (s *AwsCloudWatchAlarmDetails) SetOkActions(v []*string) *AwsCloudWatchAlarmDetails { + s.OkActions = v + return s +} + +// SetPeriod sets the Period field's value. +func (s *AwsCloudWatchAlarmDetails) SetPeriod(v int64) *AwsCloudWatchAlarmDetails { + s.Period = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *AwsCloudWatchAlarmDetails) SetStatistic(v string) *AwsCloudWatchAlarmDetails { + s.Statistic = &v + return s +} + +// SetThreshold sets the Threshold field's value. +func (s *AwsCloudWatchAlarmDetails) SetThreshold(v float64) *AwsCloudWatchAlarmDetails { + s.Threshold = &v + return s +} + +// SetThresholdMetricId sets the ThresholdMetricId field's value. +func (s *AwsCloudWatchAlarmDetails) SetThresholdMetricId(v string) *AwsCloudWatchAlarmDetails { + s.ThresholdMetricId = &v + return s +} + +// SetTreatMissingData sets the TreatMissingData field's value. +func (s *AwsCloudWatchAlarmDetails) SetTreatMissingData(v string) *AwsCloudWatchAlarmDetails { + s.TreatMissingData = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *AwsCloudWatchAlarmDetails) SetUnit(v string) *AwsCloudWatchAlarmDetails { + s.Unit = &v + return s +} + +// Details about the dimensions for the metric associated with the alarm. +type AwsCloudWatchAlarmDimensionsDetails struct { + _ struct{} `type:"structure"` + + // The name of a dimension. + Name *string `type:"string"` + + // The value of a dimension. + Value *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudWatchAlarmDimensionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsCloudWatchAlarmDimensionsDetails) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AwsCloudWatchAlarmDimensionsDetails) SetName(v string) *AwsCloudWatchAlarmDimensionsDetails { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AwsCloudWatchAlarmDimensionsDetails) SetValue(v string) *AwsCloudWatchAlarmDimensionsDetails { + s.Value = &v + return s +} + // Information about the build artifacts for the CodeBuild project. type AwsCodeBuildProjectArtifactsDetails struct { _ struct{} `type:"structure"` @@ -12383,7 +13058,7 @@ func (s *AwsEc2EipDetails) SetPublicIpv4Pool(v string) *AwsEc2EipDetails { return s } -// The details of an EC2 instance. +// The details of an Amazon EC2 instance. type AwsEc2InstanceDetails struct { _ struct{} `type:"structure"` @@ -12409,6 +13084,9 @@ type AwsEc2InstanceDetails struct { // contain spaces. For example, 2020-03-22T13:22:13.933Z. LaunchedAt *string `type:"string"` + // Details about the metadata options for the Amazon EC2 instance. + MetadataOptions *AwsEc2InstanceMetadataOptions `type:"structure"` + // The identifiers of the network interfaces for the EC2 instance. The details // for each network interface are in a corresponding AwsEc2NetworkInterfacesDetails // object. @@ -12420,6 +13098,10 @@ type AwsEc2InstanceDetails struct { // The instance type of the instance. Type *string `type:"string"` + // The virtualization type of the Amazon Machine Image (AMI) required to launch + // the instance. + VirtualizationType *string `type:"string"` + // The identifier of the VPC that the instance was launched in. VpcId *string `type:"string"` } @@ -12478,6 +13160,12 @@ func (s *AwsEc2InstanceDetails) SetLaunchedAt(v string) *AwsEc2InstanceDetails { return s } +// SetMetadataOptions sets the MetadataOptions field's value. +func (s *AwsEc2InstanceDetails) SetMetadataOptions(v *AwsEc2InstanceMetadataOptions) *AwsEc2InstanceDetails { + s.MetadataOptions = v + return s +} + // SetNetworkInterfaces sets the NetworkInterfaces field's value. func (s *AwsEc2InstanceDetails) SetNetworkInterfaces(v []*AwsEc2InstanceNetworkInterfacesDetails) *AwsEc2InstanceDetails { s.NetworkInterfaces = v @@ -12496,13 +13184,88 @@ func (s *AwsEc2InstanceDetails) SetType(v string) *AwsEc2InstanceDetails { return s } +// SetVirtualizationType sets the VirtualizationType field's value. +func (s *AwsEc2InstanceDetails) SetVirtualizationType(v string) *AwsEc2InstanceDetails { + s.VirtualizationType = &v + return s +} + // SetVpcId sets the VpcId field's value. func (s *AwsEc2InstanceDetails) SetVpcId(v string) *AwsEc2InstanceDetails { s.VpcId = &v return s } -// Identifies a network interface for the EC2 instance. +// Metadata options that allow you to configure and secure the Amazon EC2 instance. +type AwsEc2InstanceMetadataOptions struct { + _ struct{} `type:"structure"` + + // Enables or disables the HTTP metadata endpoint on the instance. + HttpEndpoint *string `type:"string"` + + // Enables or disables the IPv6 endpoint for the instance metadata service. + HttpProtocolIpv6 *string `type:"string"` + + // The desired HTTP PUT response hop limit for instance metadata requests. The + // larger the number, the further instance metadata requests can travel. + HttpPutResponseHopLimit *int64 `type:"integer"` + + // The state of token usage for your instance metadata requests. + HttpTokens *string `type:"string"` + + // Specifies whether to allow access to instance tags from the instance metadata. + InstanceMetadataTags *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2InstanceMetadataOptions) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2InstanceMetadataOptions) GoString() string { + return s.String() +} + +// SetHttpEndpoint sets the HttpEndpoint field's value. +func (s *AwsEc2InstanceMetadataOptions) SetHttpEndpoint(v string) *AwsEc2InstanceMetadataOptions { + s.HttpEndpoint = &v + return s +} + +// SetHttpProtocolIpv6 sets the HttpProtocolIpv6 field's value. +func (s *AwsEc2InstanceMetadataOptions) SetHttpProtocolIpv6(v string) *AwsEc2InstanceMetadataOptions { + s.HttpProtocolIpv6 = &v + return s +} + +// SetHttpPutResponseHopLimit sets the HttpPutResponseHopLimit field's value. +func (s *AwsEc2InstanceMetadataOptions) SetHttpPutResponseHopLimit(v int64) *AwsEc2InstanceMetadataOptions { + s.HttpPutResponseHopLimit = &v + return s +} + +// SetHttpTokens sets the HttpTokens field's value. +func (s *AwsEc2InstanceMetadataOptions) SetHttpTokens(v string) *AwsEc2InstanceMetadataOptions { + s.HttpTokens = &v + return s +} + +// SetInstanceMetadataTags sets the InstanceMetadataTags field's value. +func (s *AwsEc2InstanceMetadataOptions) SetInstanceMetadataTags(v string) *AwsEc2InstanceMetadataOptions { + s.InstanceMetadataTags = &v + return s +} + +// Identifies a network interface for the Amazon EC2 instance. type AwsEc2InstanceNetworkInterfacesDetails struct { _ struct{} `type:"structure"` @@ -12585,7 +13348,7 @@ func (s *AwsEc2NetworkAclAssociation) SetSubnetId(v string) *AwsEc2NetworkAclAss return s } -// Contains details about an EC2 network access control list (ACL). +// Contains details about an Amazon EC2 network access control list (ACL). type AwsEc2NetworkAclDetails struct { _ struct{} `type:"structure"` @@ -13064,7 +13827,7 @@ func (s *AwsEc2NetworkInterfaceSecurityGroup) SetGroupName(v string) *AwsEc2Netw return s } -// Details about an EC2 security group. +// Details about an Amazon EC2 security group. type AwsEc2SecurityGroupDetails struct { _ struct{} `type:"structure"` @@ -13574,6 +14337,140 @@ func (s *AwsEc2SubnetDetails) SetVpcId(v string) *AwsEc2SubnetDetails { return s } +// Information about an Amazon Web Services Amazon EC2 Transit Gateway that +// interconnects virtual private clouds (VPCs) and on-premises networks. +type AwsEc2TransitGatewayDetails struct { + _ struct{} `type:"structure"` + + // A private Autonomous System Number (ASN) for the Amazon side of a BGP session. + AmazonSideAsn *int64 `type:"integer"` + + // The ID of the default association route table. + AssociationDefaultRouteTableId *string `type:"string"` + + // Turn on or turn off automatic acceptance of attachment requests. + AutoAcceptSharedAttachments *string `type:"string"` + + // Turn on or turn off automatic association with the default association route + // table. + DefaultRouteTableAssociation *string `type:"string"` + + // Turn on or turn off automatic propagation of routes to the default propagation + // route table. + DefaultRouteTablePropagation *string `type:"string"` + + // The description of the transit gateway. + Description *string `type:"string"` + + // Turn on or turn off DNS support. + DnsSupport *string `type:"string"` + + // The ID of the transit gateway. + Id *string `type:"string"` + + // Indicates whether multicast is supported on the transit gateway. + MulticastSupport *string `type:"string"` + + // The ID of the default propagation route table. + PropagationDefaultRouteTableId *string `type:"string"` + + // The transit gateway Classless Inter-Domain Routing (CIDR) blocks. + TransitGatewayCidrBlocks []*string `type:"list"` + + // Turn on or turn off Equal Cost Multipath Protocol (ECMP) support. + VpnEcmpSupport *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2TransitGatewayDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2TransitGatewayDetails) GoString() string { + return s.String() +} + +// SetAmazonSideAsn sets the AmazonSideAsn field's value. +func (s *AwsEc2TransitGatewayDetails) SetAmazonSideAsn(v int64) *AwsEc2TransitGatewayDetails { + s.AmazonSideAsn = &v + return s +} + +// SetAssociationDefaultRouteTableId sets the AssociationDefaultRouteTableId field's value. +func (s *AwsEc2TransitGatewayDetails) SetAssociationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { + s.AssociationDefaultRouteTableId = &v + return s +} + +// SetAutoAcceptSharedAttachments sets the AutoAcceptSharedAttachments field's value. +func (s *AwsEc2TransitGatewayDetails) SetAutoAcceptSharedAttachments(v string) *AwsEc2TransitGatewayDetails { + s.AutoAcceptSharedAttachments = &v + return s +} + +// SetDefaultRouteTableAssociation sets the DefaultRouteTableAssociation field's value. +func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTableAssociation(v string) *AwsEc2TransitGatewayDetails { + s.DefaultRouteTableAssociation = &v + return s +} + +// SetDefaultRouteTablePropagation sets the DefaultRouteTablePropagation field's value. +func (s *AwsEc2TransitGatewayDetails) SetDefaultRouteTablePropagation(v string) *AwsEc2TransitGatewayDetails { + s.DefaultRouteTablePropagation = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *AwsEc2TransitGatewayDetails) SetDescription(v string) *AwsEc2TransitGatewayDetails { + s.Description = &v + return s +} + +// SetDnsSupport sets the DnsSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetDnsSupport(v string) *AwsEc2TransitGatewayDetails { + s.DnsSupport = &v + return s +} + +// SetId sets the Id field's value. +func (s *AwsEc2TransitGatewayDetails) SetId(v string) *AwsEc2TransitGatewayDetails { + s.Id = &v + return s +} + +// SetMulticastSupport sets the MulticastSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetMulticastSupport(v string) *AwsEc2TransitGatewayDetails { + s.MulticastSupport = &v + return s +} + +// SetPropagationDefaultRouteTableId sets the PropagationDefaultRouteTableId field's value. +func (s *AwsEc2TransitGatewayDetails) SetPropagationDefaultRouteTableId(v string) *AwsEc2TransitGatewayDetails { + s.PropagationDefaultRouteTableId = &v + return s +} + +// SetTransitGatewayCidrBlocks sets the TransitGatewayCidrBlocks field's value. +func (s *AwsEc2TransitGatewayDetails) SetTransitGatewayCidrBlocks(v []*string) *AwsEc2TransitGatewayDetails { + s.TransitGatewayCidrBlocks = v + return s +} + +// SetVpnEcmpSupport sets the VpnEcmpSupport field's value. +func (s *AwsEc2TransitGatewayDetails) SetVpnEcmpSupport(v string) *AwsEc2TransitGatewayDetails { + s.VpnEcmpSupport = &v + return s +} + // An attachment to an Amazon EC2 volume. type AwsEc2VolumeAttachment struct { _ struct{} `type:"structure"` @@ -13647,7 +14544,10 @@ type AwsEc2VolumeDetails struct { // contain spaces. For example, 2020-03-22T13:22:13.933Z. CreateTime *string `type:"string"` - // Whether the volume is encrypted. + // The device name for the volume that is attached to the instance. + DeviceName *string `type:"string"` + + // Specifies whether the volume is encrypted. Encrypted *bool `type:"boolean"` // The ARN of the KMS key that was used to protect the volume encryption key @@ -13662,6 +14562,15 @@ type AwsEc2VolumeDetails struct { // The volume state. Status *string `type:"string"` + + // The ID of the volume. + VolumeId *string `type:"string"` + + // Indicates whether the volume was scanned or skipped. + VolumeScanStatus *string `type:"string"` + + // The volume type. + VolumeType *string `type:"string"` } // String returns the string representation. @@ -13694,6 +14603,12 @@ func (s *AwsEc2VolumeDetails) SetCreateTime(v string) *AwsEc2VolumeDetails { return s } +// SetDeviceName sets the DeviceName field's value. +func (s *AwsEc2VolumeDetails) SetDeviceName(v string) *AwsEc2VolumeDetails { + s.DeviceName = &v + return s +} + // SetEncrypted sets the Encrypted field's value. func (s *AwsEc2VolumeDetails) SetEncrypted(v bool) *AwsEc2VolumeDetails { s.Encrypted = &v @@ -13724,6 +14639,24 @@ func (s *AwsEc2VolumeDetails) SetStatus(v string) *AwsEc2VolumeDetails { return s } +// SetVolumeId sets the VolumeId field's value. +func (s *AwsEc2VolumeDetails) SetVolumeId(v string) *AwsEc2VolumeDetails { + s.VolumeId = &v + return s +} + +// SetVolumeScanStatus sets the VolumeScanStatus field's value. +func (s *AwsEc2VolumeDetails) SetVolumeScanStatus(v string) *AwsEc2VolumeDetails { + s.VolumeScanStatus = &v + return s +} + +// SetVolumeType sets the VolumeType field's value. +func (s *AwsEc2VolumeDetails) SetVolumeType(v string) *AwsEc2VolumeDetails { + s.VolumeType = &v + return s +} + // Details about an EC2 VPC. type AwsEc2VpcDetails struct { _ struct{} `type:"structure"` @@ -13940,6 +14873,203 @@ func (s *AwsEc2VpcEndpointServiceServiceTypeDetails) SetServiceType(v string) *A return s } +// Provides information about a VPC peering connection between two VPCs: a requester +// VPC that you own and an accepter VPC with which to create the connection. +type AwsEc2VpcPeeringConnectionDetails struct { + _ struct{} `type:"structure"` + + // Information about the accepter VPC. + AccepterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` + + // The time at which an unaccepted VPC peering connection will expire. + ExpirationTime *string `type:"string"` + + // Information about the requester VPC. + RequesterVpcInfo *AwsEc2VpcPeeringConnectionVpcInfoDetails `type:"structure"` + + // The status of the VPC peering connection. + Status *AwsEc2VpcPeeringConnectionStatusDetails `type:"structure"` + + // The ID of the VPC peering connection. + VpcPeeringConnectionId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionDetails) GoString() string { + return s.String() +} + +// SetAccepterVpcInfo sets the AccepterVpcInfo field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetAccepterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { + s.AccepterVpcInfo = v + return s +} + +// SetExpirationTime sets the ExpirationTime field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetExpirationTime(v string) *AwsEc2VpcPeeringConnectionDetails { + s.ExpirationTime = &v + return s +} + +// SetRequesterVpcInfo sets the RequesterVpcInfo field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetRequesterVpcInfo(v *AwsEc2VpcPeeringConnectionVpcInfoDetails) *AwsEc2VpcPeeringConnectionDetails { + s.RequesterVpcInfo = v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetStatus(v *AwsEc2VpcPeeringConnectionStatusDetails) *AwsEc2VpcPeeringConnectionDetails { + s.Status = v + return s +} + +// SetVpcPeeringConnectionId sets the VpcPeeringConnectionId field's value. +func (s *AwsEc2VpcPeeringConnectionDetails) SetVpcPeeringConnectionId(v string) *AwsEc2VpcPeeringConnectionDetails { + s.VpcPeeringConnectionId = &v + return s +} + +// Details about the status of the VPC peering connection. +type AwsEc2VpcPeeringConnectionStatusDetails struct { + _ struct{} `type:"structure"` + + // The status of the VPC peering connection. + Code *string `type:"string"` + + // A message that provides more information about the status, if applicable. + Message *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionStatusDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionStatusDetails) GoString() string { + return s.String() +} + +// SetCode sets the Code field's value. +func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetCode(v string) *AwsEc2VpcPeeringConnectionStatusDetails { + s.Code = &v + return s +} + +// SetMessage sets the Message field's value. +func (s *AwsEc2VpcPeeringConnectionStatusDetails) SetMessage(v string) *AwsEc2VpcPeeringConnectionStatusDetails { + s.Message = &v + return s +} + +// Describes a VPC in a VPC peering connection. +type AwsEc2VpcPeeringConnectionVpcInfoDetails struct { + _ struct{} `type:"structure"` + + // The IPv4 CIDR block for the VPC. + CidrBlock *string `type:"string"` + + // Information about the IPv4 CIDR blocks for the VPC. + CidrBlockSet []*VpcInfoCidrBlockSetDetails `type:"list"` + + // The IPv6 CIDR block for the VPC. + Ipv6CidrBlockSet []*VpcInfoIpv6CidrBlockSetDetails `type:"list"` + + // The ID of the Amazon Web Services account that owns the VPC. + OwnerId *string `type:"string"` + + // Information about the VPC peering connection options for the accepter or + // requester VPC. + PeeringOptions *VpcInfoPeeringOptionsDetails `type:"structure"` + + // The Amazon Web Services Region in which the VPC is located. + Region *string `type:"string"` + + // The ID of the VPC. + VpcId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEc2VpcPeeringConnectionVpcInfoDetails) GoString() string { + return s.String() +} + +// SetCidrBlock sets the CidrBlock field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlock(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.CidrBlock = &v + return s +} + +// SetCidrBlockSet sets the CidrBlockSet field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetCidrBlockSet(v []*VpcInfoCidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.CidrBlockSet = v + return s +} + +// SetIpv6CidrBlockSet sets the Ipv6CidrBlockSet field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetIpv6CidrBlockSet(v []*VpcInfoIpv6CidrBlockSetDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.Ipv6CidrBlockSet = v + return s +} + +// SetOwnerId sets the OwnerId field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetOwnerId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.OwnerId = &v + return s +} + +// SetPeeringOptions sets the PeeringOptions field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetPeeringOptions(v *VpcInfoPeeringOptionsDetails) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.PeeringOptions = v + return s +} + +// SetRegion sets the Region field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetRegion(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.Region = &v + return s +} + +// SetVpcId sets the VpcId field's value. +func (s *AwsEc2VpcPeeringConnectionVpcInfoDetails) SetVpcId(v string) *AwsEc2VpcPeeringConnectionVpcInfoDetails { + s.VpcId = &v + return s +} + // Details about an Amazon EC2 VPN connection. type AwsEc2VpnConnectionDetails struct { _ struct{} `type:"structure"` @@ -14882,13 +16012,24 @@ func (s *AwsEcsClusterDefaultCapacityProviderStrategyDetails) SetWeight(v int64) return s } -// provides details about an ECS cluster. +// Provides details about an Amazon ECS cluster. type AwsEcsClusterDetails struct { _ struct{} `type:"structure"` + // The number of services that are running on the cluster in an ACTIVE state. + // You can view these services with the Amazon ECS ListServices (https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServices.html) + // API operation. + ActiveServicesCount *int64 `type:"integer"` + // The short name of one or more capacity providers to associate with the cluster. CapacityProviders []*string `type:"list"` + // The Amazon Resource Name (ARN) that identifies the cluster. + ClusterArn *string `type:"string"` + + // A name that you use to identify your cluster. + ClusterName *string `type:"string"` + // The setting to use to create the cluster. Specifically used to configure // whether to enable CloudWatch Container Insights for the cluster. ClusterSettings []*AwsEcsClusterClusterSettingsDetails `type:"list"` @@ -14900,6 +16041,16 @@ type AwsEcsClusterDetails struct { // provider strategy is used when services or tasks are run without a specified // launch type or capacity provider strategy. DefaultCapacityProviderStrategy []*AwsEcsClusterDefaultCapacityProviderStrategyDetails `type:"list"` + + // The number of container instances registered into the cluster. This includes + // container instances in both ACTIVE and DRAINING status. + RegisteredContainerInstancesCount *int64 `type:"integer"` + + // The number of tasks in the cluster that are in the RUNNING state. + RunningTasksCount *int64 `type:"integer"` + + // The status of the cluster. + Status *string `type:"string"` } // String returns the string representation. @@ -14920,12 +16071,30 @@ func (s AwsEcsClusterDetails) GoString() string { return s.String() } +// SetActiveServicesCount sets the ActiveServicesCount field's value. +func (s *AwsEcsClusterDetails) SetActiveServicesCount(v int64) *AwsEcsClusterDetails { + s.ActiveServicesCount = &v + return s +} + // SetCapacityProviders sets the CapacityProviders field's value. func (s *AwsEcsClusterDetails) SetCapacityProviders(v []*string) *AwsEcsClusterDetails { s.CapacityProviders = v return s } +// SetClusterArn sets the ClusterArn field's value. +func (s *AwsEcsClusterDetails) SetClusterArn(v string) *AwsEcsClusterDetails { + s.ClusterArn = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *AwsEcsClusterDetails) SetClusterName(v string) *AwsEcsClusterDetails { + s.ClusterName = &v + return s +} + // SetClusterSettings sets the ClusterSettings field's value. func (s *AwsEcsClusterDetails) SetClusterSettings(v []*AwsEcsClusterClusterSettingsDetails) *AwsEcsClusterDetails { s.ClusterSettings = v @@ -14944,6 +16113,84 @@ func (s *AwsEcsClusterDetails) SetDefaultCapacityProviderStrategy(v []*AwsEcsClu return s } +// SetRegisteredContainerInstancesCount sets the RegisteredContainerInstancesCount field's value. +func (s *AwsEcsClusterDetails) SetRegisteredContainerInstancesCount(v int64) *AwsEcsClusterDetails { + s.RegisteredContainerInstancesCount = &v + return s +} + +// SetRunningTasksCount sets the RunningTasksCount field's value. +func (s *AwsEcsClusterDetails) SetRunningTasksCount(v int64) *AwsEcsClusterDetails { + s.RunningTasksCount = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AwsEcsClusterDetails) SetStatus(v string) *AwsEcsClusterDetails { + s.Status = &v + return s +} + +// Provides information about an Amazon ECS container. +type AwsEcsContainerDetails struct { + _ struct{} `type:"structure"` + + // The image used for the container. + Image *string `type:"string"` + + // The mount points for data volumes in your container. + MountPoints []*AwsMountPoint `type:"list"` + + // The name of the container. + Name *string `type:"string"` + + // When this parameter is true, the container is given elevated privileges on + // the host container instance (similar to the root user). + Privileged *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsContainerDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsContainerDetails) GoString() string { + return s.String() +} + +// SetImage sets the Image field's value. +func (s *AwsEcsContainerDetails) SetImage(v string) *AwsEcsContainerDetails { + s.Image = &v + return s +} + +// SetMountPoints sets the MountPoints field's value. +func (s *AwsEcsContainerDetails) SetMountPoints(v []*AwsMountPoint) *AwsEcsContainerDetails { + s.MountPoints = v + return s +} + +// SetName sets the Name field's value. +func (s *AwsEcsContainerDetails) SetName(v string) *AwsEcsContainerDetails { + s.Name = &v + return s +} + +// SetPrivileged sets the Privileged field's value. +func (s *AwsEcsContainerDetails) SetPrivileged(v bool) *AwsEcsContainerDetails { + s.Privileged = &v + return s +} + // Strategy item for the capacity provider strategy that the service uses. type AwsEcsServiceCapacityProviderStrategyDetails struct { _ struct{} `type:"structure"` @@ -17134,7 +18381,7 @@ func (s *AwsEcsTaskDefinitionContainerDefinitionsVolumesFromDetails) SetSourceCo return s } -// details about a task definition. A task definition describes the container +// Details about a task definition. A task definition describes the container // and volume definitions of an Amazon Elastic Container Service task. type AwsEcsTaskDefinitionDetails struct { _ struct{} `type:"structure"` @@ -17738,6 +18985,424 @@ func (s *AwsEcsTaskDefinitionVolumesHostDetails) SetSourcePath(v string) *AwsEcs return s } +// Provides details about a task in a cluster. +type AwsEcsTaskDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the cluster that hosts the task. + ClusterArn *string `type:"string"` + + // The containers that are associated with the task. + Containers []*AwsEcsContainerDetails `type:"list"` + + // The Unix timestamp for the time when the task was created. More specifically, + // it's for the time when the task entered the PENDING state. + CreatedAt *string `type:"string"` + + // The name of the task group that's associated with the task. + Group *string `type:"string"` + + // The Unix timestamp for the time when the task started. More specifically, + // it's for the time when the task transitioned from the PENDING state to the + // RUNNING state. + StartedAt *string `type:"string"` + + // The tag specified when a task is started. If an Amazon ECS service started + // the task, the startedBy parameter contains the deployment ID of that service. + StartedBy *string `type:"string"` + + // The ARN of the task definition that creates the task. + TaskDefinitionArn *string `type:"string"` + + // The version counter for the task. + Version *string `type:"string"` + + // Details about the data volume that is used in a task definition. + Volumes []*AwsEcsTaskVolumeDetails `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskDetails) GoString() string { + return s.String() +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *AwsEcsTaskDetails) SetClusterArn(v string) *AwsEcsTaskDetails { + s.ClusterArn = &v + return s +} + +// SetContainers sets the Containers field's value. +func (s *AwsEcsTaskDetails) SetContainers(v []*AwsEcsContainerDetails) *AwsEcsTaskDetails { + s.Containers = v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *AwsEcsTaskDetails) SetCreatedAt(v string) *AwsEcsTaskDetails { + s.CreatedAt = &v + return s +} + +// SetGroup sets the Group field's value. +func (s *AwsEcsTaskDetails) SetGroup(v string) *AwsEcsTaskDetails { + s.Group = &v + return s +} + +// SetStartedAt sets the StartedAt field's value. +func (s *AwsEcsTaskDetails) SetStartedAt(v string) *AwsEcsTaskDetails { + s.StartedAt = &v + return s +} + +// SetStartedBy sets the StartedBy field's value. +func (s *AwsEcsTaskDetails) SetStartedBy(v string) *AwsEcsTaskDetails { + s.StartedBy = &v + return s +} + +// SetTaskDefinitionArn sets the TaskDefinitionArn field's value. +func (s *AwsEcsTaskDetails) SetTaskDefinitionArn(v string) *AwsEcsTaskDetails { + s.TaskDefinitionArn = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *AwsEcsTaskDetails) SetVersion(v string) *AwsEcsTaskDetails { + s.Version = &v + return s +} + +// SetVolumes sets the Volumes field's value. +func (s *AwsEcsTaskDetails) SetVolumes(v []*AwsEcsTaskVolumeDetails) *AwsEcsTaskDetails { + s.Volumes = v + return s +} + +// Provides information about a data volume that's used in a task definition. +type AwsEcsTaskVolumeDetails struct { + _ struct{} `type:"structure"` + + // This parameter is specified when you use bind mount host volumes. The contents + // of the host parameter determine whether your bind mount host volume persists + // on the host container instance and where it's stored. + Host *AwsEcsTaskVolumeHostDetails `type:"structure"` + + // The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, + // underscores, and hyphens are allowed. This name is referenced in the sourceVolume + // parameter of container definition mountPoints. + Name *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskVolumeDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskVolumeDetails) GoString() string { + return s.String() +} + +// SetHost sets the Host field's value. +func (s *AwsEcsTaskVolumeDetails) SetHost(v *AwsEcsTaskVolumeHostDetails) *AwsEcsTaskVolumeDetails { + s.Host = v + return s +} + +// SetName sets the Name field's value. +func (s *AwsEcsTaskVolumeDetails) SetName(v string) *AwsEcsTaskVolumeDetails { + s.Name = &v + return s +} + +// Provides details on a container instance bind mount host volume. +type AwsEcsTaskVolumeHostDetails struct { + _ struct{} `type:"structure"` + + // When the host parameter is used, specify a sourcePath to declare the path + // on the host container instance that's presented to the container. + SourcePath *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskVolumeHostDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEcsTaskVolumeHostDetails) GoString() string { + return s.String() +} + +// SetSourcePath sets the SourcePath field's value. +func (s *AwsEcsTaskVolumeHostDetails) SetSourcePath(v string) *AwsEcsTaskVolumeHostDetails { + s.SourcePath = &v + return s +} + +// Provides information about an Amazon EFS access point. +type AwsEfsAccessPointDetails struct { + _ struct{} `type:"structure"` + + // The ID of the Amazon EFS access point. + AccessPointId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the Amazon EFS access point. + Arn *string `type:"string"` + + // The opaque string specified in the request to ensure idempotent creation. + ClientToken *string `type:"string"` + + // The ID of the Amazon EFS file system that the access point applies to. + FileSystemId *string `type:"string"` + + // The full POSIX identity, including the user ID, group ID, and secondary group + // IDs on the access point, that is used for all file operations by NFS clients + // using the access point. + PosixUser *AwsEfsAccessPointPosixUserDetails `type:"structure"` + + // The directory on the Amazon EFS file system that the access point exposes + // as the root directory to NFS clients using the access point. + RootDirectory *AwsEfsAccessPointRootDirectoryDetails `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 AwsEfsAccessPointDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointDetails) GoString() string { + return s.String() +} + +// SetAccessPointId sets the AccessPointId field's value. +func (s *AwsEfsAccessPointDetails) SetAccessPointId(v string) *AwsEfsAccessPointDetails { + s.AccessPointId = &v + return s +} + +// SetArn sets the Arn field's value. +func (s *AwsEfsAccessPointDetails) SetArn(v string) *AwsEfsAccessPointDetails { + s.Arn = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *AwsEfsAccessPointDetails) SetClientToken(v string) *AwsEfsAccessPointDetails { + s.ClientToken = &v + return s +} + +// SetFileSystemId sets the FileSystemId field's value. +func (s *AwsEfsAccessPointDetails) SetFileSystemId(v string) *AwsEfsAccessPointDetails { + s.FileSystemId = &v + return s +} + +// SetPosixUser sets the PosixUser field's value. +func (s *AwsEfsAccessPointDetails) SetPosixUser(v *AwsEfsAccessPointPosixUserDetails) *AwsEfsAccessPointDetails { + s.PosixUser = v + return s +} + +// SetRootDirectory sets the RootDirectory field's value. +func (s *AwsEfsAccessPointDetails) SetRootDirectory(v *AwsEfsAccessPointRootDirectoryDetails) *AwsEfsAccessPointDetails { + s.RootDirectory = v + return s +} + +// Provides details for all file system operations using this Amazon EFS access +// point. +type AwsEfsAccessPointPosixUserDetails struct { + _ struct{} `type:"structure"` + + // The POSIX group ID used for all file system operations using this access + // point. + Gid *string `type:"string"` + + // Secondary POSIX group IDs used for all file system operations using this + // access point. + SecondaryGids []*string `type:"list"` + + // The POSIX user ID used for all file system operations using this access point. + Uid *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointPosixUserDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointPosixUserDetails) GoString() string { + return s.String() +} + +// SetGid sets the Gid field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetGid(v string) *AwsEfsAccessPointPosixUserDetails { + s.Gid = &v + return s +} + +// SetSecondaryGids sets the SecondaryGids field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetSecondaryGids(v []*string) *AwsEfsAccessPointPosixUserDetails { + s.SecondaryGids = v + return s +} + +// SetUid sets the Uid field's value. +func (s *AwsEfsAccessPointPosixUserDetails) SetUid(v string) *AwsEfsAccessPointPosixUserDetails { + s.Uid = &v + return s +} + +// Provides information about the settings that Amazon EFS uses to create the +// root directory when a client connects to an access point. +type AwsEfsAccessPointRootDirectoryCreationInfoDetails struct { + _ struct{} `type:"structure"` + + // Specifies the POSIX group ID to apply to the root directory. + OwnerGid *string `type:"string"` + + // Specifies the POSIX user ID to apply to the root directory. + OwnerUid *string `type:"string"` + + // Specifies the POSIX permissions to apply to the root directory, in the format + // of an octal number representing the file's mode bits. + Permissions *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryCreationInfoDetails) GoString() string { + return s.String() +} + +// SetOwnerGid sets the OwnerGid field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerGid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.OwnerGid = &v + return s +} + +// SetOwnerUid sets the OwnerUid field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetOwnerUid(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.OwnerUid = &v + return s +} + +// SetPermissions sets the Permissions field's value. +func (s *AwsEfsAccessPointRootDirectoryCreationInfoDetails) SetPermissions(v string) *AwsEfsAccessPointRootDirectoryCreationInfoDetails { + s.Permissions = &v + return s +} + +// Provides information about the directory on the Amazon EFS file system that +// the access point exposes as the root directory to NFS clients using the access +// point. +type AwsEfsAccessPointRootDirectoryDetails struct { + _ struct{} `type:"structure"` + + // Specifies the POSIX IDs and permissions to apply to the access point's root + // directory. + CreationInfo *AwsEfsAccessPointRootDirectoryCreationInfoDetails `type:"structure"` + + // Specifies the path on the Amazon EFS file system to expose as the root directory + // to NFS clients using the access point to access the EFS file system. A path + // can have up to four subdirectories. If the specified path does not exist, + // you are required to provide CreationInfo. + Path *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsEfsAccessPointRootDirectoryDetails) GoString() string { + return s.String() +} + +// SetCreationInfo sets the CreationInfo field's value. +func (s *AwsEfsAccessPointRootDirectoryDetails) SetCreationInfo(v *AwsEfsAccessPointRootDirectoryCreationInfoDetails) *AwsEfsAccessPointRootDirectoryDetails { + s.CreationInfo = v + return s +} + +// SetPath sets the Path field's value. +func (s *AwsEfsAccessPointRootDirectoryDetails) SetPath(v string) *AwsEfsAccessPointRootDirectoryDetails { + s.Path = &v + return s +} + // Provides details about an Amazon EKS cluster. type AwsEksClusterDetails struct { _ struct{} `type:"structure"` @@ -21172,6 +22837,120 @@ func (s *AwsIamUserPolicy) SetPolicyName(v string) *AwsIamUserPolicy { return s } +// Provides information about an Amazon Kinesis data stream. +type AwsKinesisStreamDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the Kinesis data stream. + Arn *string `type:"string"` + + // The name of the Kinesis stream. If you don't specify a name, CloudFront generates + // a unique physical ID and uses that ID for the stream name. + Name *string `type:"string"` + + // The number of hours for the data records that are stored in shards to remain + // accessible. + RetentionPeriodHours *int64 `type:"integer"` + + // The number of shards that the stream uses. + ShardCount *int64 `type:"integer"` + + // When specified, enables or updates server-side encryption using an KMS key + // for a specified stream. Removing this property from your stack template and + // updating your stack disables encryption. + StreamEncryption *AwsKinesisStreamStreamEncryptionDetails `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 AwsKinesisStreamDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsKinesisStreamDetails) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *AwsKinesisStreamDetails) SetArn(v string) *AwsKinesisStreamDetails { + s.Arn = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsKinesisStreamDetails) SetName(v string) *AwsKinesisStreamDetails { + s.Name = &v + return s +} + +// SetRetentionPeriodHours sets the RetentionPeriodHours field's value. +func (s *AwsKinesisStreamDetails) SetRetentionPeriodHours(v int64) *AwsKinesisStreamDetails { + s.RetentionPeriodHours = &v + return s +} + +// SetShardCount sets the ShardCount field's value. +func (s *AwsKinesisStreamDetails) SetShardCount(v int64) *AwsKinesisStreamDetails { + s.ShardCount = &v + return s +} + +// SetStreamEncryption sets the StreamEncryption field's value. +func (s *AwsKinesisStreamDetails) SetStreamEncryption(v *AwsKinesisStreamStreamEncryptionDetails) *AwsKinesisStreamDetails { + s.StreamEncryption = v + return s +} + +// Provides information about stream encryption. +type AwsKinesisStreamStreamEncryptionDetails struct { + _ struct{} `type:"structure"` + + // The encryption type to use. + EncryptionType *string `type:"string"` + + // The globally unique identifier for the customer-managed KMS key to use for + // encryption. + KeyId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsKinesisStreamStreamEncryptionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsKinesisStreamStreamEncryptionDetails) GoString() string { + return s.String() +} + +// SetEncryptionType sets the EncryptionType field's value. +func (s *AwsKinesisStreamStreamEncryptionDetails) SetEncryptionType(v string) *AwsKinesisStreamStreamEncryptionDetails { + s.EncryptionType = &v + return s +} + +// SetKeyId sets the KeyId field's value. +func (s *AwsKinesisStreamStreamEncryptionDetails) SetKeyId(v string) *AwsKinesisStreamStreamEncryptionDetails { + s.KeyId = &v + return s +} + // Contains metadata about an KMS key. type AwsKmsKeyDetails struct { _ struct{} `type:"structure"` @@ -21187,7 +22966,7 @@ type AwsKmsKeyDetails struct { // contain spaces. For example, 2020-03-22T13:22:13.933Z. CreationDate *float64 `type:"double"` - // A description of the key. + // A description of the KMS key. Description *string `type:"string"` // The globally unique identifier for the KMS key. @@ -21829,6 +23608,48 @@ func (s *AwsLambdaLayerVersionDetails) SetVersion(v int64) *AwsLambdaLayerVersio return s } +// Details for a volume mount point that's used in a container definition. +type AwsMountPoint struct { + _ struct{} `type:"structure"` + + // The path on the container to mount the host volume at. + ContainerPath *string `type:"string"` + + // The name of the volume to mount. Must be a volume name referenced in the + // name parameter of task definition volume. + SourceVolume *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMountPoint) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsMountPoint) GoString() string { + return s.String() +} + +// SetContainerPath sets the ContainerPath field's value. +func (s *AwsMountPoint) SetContainerPath(v string) *AwsMountPoint { + s.ContainerPath = &v + return s +} + +// SetSourceVolume sets the SourceVolume field's value. +func (s *AwsMountPoint) SetSourceVolume(v string) *AwsMountPoint { + s.SourceVolume = &v + return s +} + // Details about an Network Firewall firewall. type AwsNetworkFirewallFirewallDetails struct { _ struct{} `type:"structure"` @@ -22137,6 +23958,56 @@ func (s *AwsNetworkFirewallRuleGroupDetails) SetType(v string) *AwsNetworkFirewa return s } +// Provides information about domain access control options. +type AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails struct { + _ struct{} `type:"structure"` + + // Enables fine-grained access control. + Enabled *bool `type:"boolean"` + + // Enables the internal user database. + InternalUserDatabaseEnabled *bool `type:"boolean"` + + // Specifies information about the master user of the domain. + MasterUserOptions *AwsOpenSearchServiceDomainMasterUserOptionsDetails `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 AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) GoString() string { + return s.String() +} + +// SetEnabled sets the Enabled field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.Enabled = &v + return s +} + +// SetInternalUserDatabaseEnabled sets the InternalUserDatabaseEnabled field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetInternalUserDatabaseEnabled(v bool) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.InternalUserDatabaseEnabled = &v + return s +} + +// SetMasterUserOptions sets the MasterUserOptions field's value. +func (s *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) SetMasterUserOptions(v *AwsOpenSearchServiceDomainMasterUserOptionsDetails) *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails { + s.MasterUserOptions = v + return s +} + // Details about the configuration of an OpenSearch cluster. type AwsOpenSearchServiceDomainClusterConfigDetails struct { _ struct{} `type:"structure"` @@ -22301,6 +24172,9 @@ type AwsOpenSearchServiceDomainDetails struct { // Service domain. AccessPolicies *string `type:"string"` + // Specifies options for fine-grained access control. + AdvancedSecurityOptions *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails `type:"structure"` + // The ARN of the OpenSearch Service domain. Arn *string `type:"string"` @@ -22368,6 +24242,12 @@ func (s *AwsOpenSearchServiceDomainDetails) SetAccessPolicies(v string) *AwsOpen return s } +// SetAdvancedSecurityOptions sets the AdvancedSecurityOptions field's value. +func (s *AwsOpenSearchServiceDomainDetails) SetAdvancedSecurityOptions(v *AwsOpenSearchServiceDomainAdvancedSecurityOptionsDetails) *AwsOpenSearchServiceDomainDetails { + s.AdvancedSecurityOptions = v + return s +} + // SetArn sets the Arn field's value. func (s *AwsOpenSearchServiceDomainDetails) SetArn(v string) *AwsOpenSearchServiceDomainDetails { s.Arn = &v @@ -22648,6 +24528,56 @@ func (s *AwsOpenSearchServiceDomainLogPublishingOptionsDetails) SetSearchSlowLog return s } +// Specifies information about the master user of the domain. +type AwsOpenSearchServiceDomainMasterUserOptionsDetails struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) for the master user. + MasterUserArn *string `type:"string"` + + // The username for the master user. + MasterUserName *string `type:"string"` + + // The password for the master user. + MasterUserPassword *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsOpenSearchServiceDomainMasterUserOptionsDetails) GoString() string { + return s.String() +} + +// SetMasterUserArn sets the MasterUserArn field's value. +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserArn(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { + s.MasterUserArn = &v + return s +} + +// SetMasterUserName sets the MasterUserName field's value. +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserName(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { + s.MasterUserName = &v + return s +} + +// SetMasterUserPassword sets the MasterUserPassword field's value. +func (s *AwsOpenSearchServiceDomainMasterUserOptionsDetails) SetMasterUserPassword(v string) *AwsOpenSearchServiceDomainMasterUserOptionsDetails { + s.MasterUserPassword = &v + return s +} + // Provides details about the configuration for node-to-node encryption. type AwsOpenSearchServiceDomainNodeToNodeEncryptionOptionsDetails struct { _ struct{} `type:"structure"` @@ -28619,6 +30549,10 @@ type AwsSecurityFinding struct { // Threat intelligence details related to a finding. ThreatIntelIndicators []*ThreatIntelIndicator `type:"list"` + // Details about the threat detected in a security finding and the file paths + // that were affected by the threat. + Threats []*Threat `type:"list"` + // A finding's title. // // In this release, Title is a required property. @@ -28969,6 +30903,12 @@ func (s *AwsSecurityFinding) SetThreatIntelIndicators(v []*ThreatIntelIndicator) return s } +// SetThreats sets the Threats field's value. +func (s *AwsSecurityFinding) SetThreats(v []*Threat) *AwsSecurityFinding { + s.Threats = v + return s +} + // SetTitle sets the Title field's value. func (s *AwsSecurityFinding) SetTitle(v string) *AwsSecurityFinding { s.Title = &v @@ -30042,10 +31982,31 @@ func (s *AwsSecurityFindingIdentifier) SetProductArn(v string) *AwsSecurityFindi return s } -// A wrapper type for the topic's ARN. +// Provides information about an Amazon SNS topic to which notifications can +// be published. type AwsSnsTopicDetails struct { _ struct{} `type:"structure"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to a platform application endpoint. + ApplicationSuccessFeedbackRoleArn *string `type:"string"` + + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an Amazon Kinesis Data Firehose endpoint. + FirehoseFailureFeedbackRoleArn *string `type:"string"` + + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an Amazon Kinesis Data Firehose endpoint. + FirehoseSuccessFeedbackRoleArn *string `type:"string"` + + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an HTTP endpoint. + HttpFailureFeedbackRoleArn *string `type:"string"` + + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an HTTP endpoint. + HttpSuccessFeedbackRoleArn *string `type:"string"` + // The ID of an Amazon Web Services managed key for Amazon SNS or a customer // managed key. KmsMasterKeyId *string `type:"string"` @@ -30053,11 +32014,19 @@ type AwsSnsTopicDetails struct { // The subscription's owner. Owner *string `type:"string"` + // Indicates failed message delivery status for an Amazon SNS topic that is + // subscribed to an Amazon SQS endpoint. + SqsFailureFeedbackRoleArn *string `type:"string"` + + // Indicates successful message delivery status for an Amazon SNS topic that + // is subscribed to an Amazon SQS endpoint. + SqsSuccessFeedbackRoleArn *string `type:"string"` + // Subscription is an embedded property that describes the subscription endpoints - // of an SNS topic. + // of an Amazon SNS topic. Subscription []*AwsSnsTopicSubscription `type:"list"` - // The name of the topic. + // The name of the Amazon SNS topic. TopicName *string `type:"string"` } @@ -30079,6 +32048,36 @@ func (s AwsSnsTopicDetails) GoString() string { return s.String() } +// SetApplicationSuccessFeedbackRoleArn sets the ApplicationSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetApplicationSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.ApplicationSuccessFeedbackRoleArn = &v + return s +} + +// SetFirehoseFailureFeedbackRoleArn sets the FirehoseFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetFirehoseFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.FirehoseFailureFeedbackRoleArn = &v + return s +} + +// SetFirehoseSuccessFeedbackRoleArn sets the FirehoseSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetFirehoseSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.FirehoseSuccessFeedbackRoleArn = &v + return s +} + +// SetHttpFailureFeedbackRoleArn sets the HttpFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetHttpFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.HttpFailureFeedbackRoleArn = &v + return s +} + +// SetHttpSuccessFeedbackRoleArn sets the HttpSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetHttpSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.HttpSuccessFeedbackRoleArn = &v + return s +} + // SetKmsMasterKeyId sets the KmsMasterKeyId field's value. func (s *AwsSnsTopicDetails) SetKmsMasterKeyId(v string) *AwsSnsTopicDetails { s.KmsMasterKeyId = &v @@ -30091,6 +32090,18 @@ func (s *AwsSnsTopicDetails) SetOwner(v string) *AwsSnsTopicDetails { return s } +// SetSqsFailureFeedbackRoleArn sets the SqsFailureFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetSqsFailureFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.SqsFailureFeedbackRoleArn = &v + return s +} + +// SetSqsSuccessFeedbackRoleArn sets the SqsSuccessFeedbackRoleArn field's value. +func (s *AwsSnsTopicDetails) SetSqsSuccessFeedbackRoleArn(v string) *AwsSnsTopicDetails { + s.SqsSuccessFeedbackRoleArn = &v + return s +} + // SetSubscription sets the Subscription field's value. func (s *AwsSnsTopicDetails) SetSubscription(v []*AwsSnsTopicSubscription) *AwsSnsTopicDetails { s.Subscription = v @@ -30752,22 +32763,781 @@ func (s *AwsWafRegionalRateBasedRuleMatchPredicate) SetType(v string) *AwsWafReg return s } -// Details about an WAF WebACL. +// Provides information about an WAF Regional rule. This rule identifies the +// web requests that you want to allow, block, or count. +type AwsWafRegionalRuleDetails struct { + _ struct{} `type:"structure"` + + // A name for the metrics for the rule. + MetricName *string `type:"string"` + + // A descriptive name for the rule. + Name *string `type:"string"` + + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + PredicateList []*AwsWafRegionalRulePredicateListDetails `type:"list"` + + // The ID of the rule. + RuleId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleDetails) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalRuleDetails) SetMetricName(v string) *AwsWafRegionalRuleDetails { + s.MetricName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafRegionalRuleDetails) SetName(v string) *AwsWafRegionalRuleDetails { + s.Name = &v + return s +} + +// SetPredicateList sets the PredicateList field's value. +func (s *AwsWafRegionalRuleDetails) SetPredicateList(v []*AwsWafRegionalRulePredicateListDetails) *AwsWafRegionalRuleDetails { + s.PredicateList = v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalRuleDetails) SetRuleId(v string) *AwsWafRegionalRuleDetails { + s.RuleId = &v + return s +} + +// Provides information about an WAF Regional rule group. The rule group is +// a collection of rules for inspecting and controlling web requests. +type AwsWafRegionalRuleGroupDetails struct { + _ struct{} `type:"structure"` + + // A name for the metrics for this rule group. + MetricName *string `type:"string"` + + // The descriptive name of the rule group. + Name *string `type:"string"` + + // The ID of the rule group. + RuleGroupId *string `type:"string"` + + // Provides information about the rule statements used to identify the web requests + // that you want to allow, block, or count. + Rules []*AwsWafRegionalRuleGroupRulesDetails `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupDetails) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetMetricName(v string) *AwsWafRegionalRuleGroupDetails { + s.MetricName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetName(v string) *AwsWafRegionalRuleGroupDetails { + s.Name = &v + return s +} + +// SetRuleGroupId sets the RuleGroupId field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRegionalRuleGroupDetails { + s.RuleGroupId = &v + return s +} + +// SetRules sets the Rules field's value. +func (s *AwsWafRegionalRuleGroupDetails) SetRules(v []*AwsWafRegionalRuleGroupRulesDetails) *AwsWafRegionalRuleGroupDetails { + s.Rules = v + return s +} + +// Describes the action that AWS WAF should take on a web request when it matches +// the criteria defined in the rule. +type AwsWafRegionalRuleGroupRulesActionDetails struct { + _ struct{} `type:"structure"` + + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupRulesActionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupRulesActionDetails) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalRuleGroupRulesActionDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesActionDetails { + s.Type = &v + return s +} + +// Provides information about the rules attached to a rule group +type AwsWafRegionalRuleGroupRulesDetails struct { + _ struct{} `type:"structure"` + + // The action that WAF should take on a web request when it matches the criteria + // defined in the rule. + Action *AwsWafRegionalRuleGroupRulesActionDetails `type:"structure"` + + // If you define more than one rule in a web ACL, WAF evaluates each request + // against the rules in order based on the value of Priority. + Priority *int64 `type:"integer"` + + // The ID for a rule. + RuleId *string `type:"string"` + + // The type of rule in the rule group. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupRulesDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRuleGroupRulesDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetAction(v *AwsWafRegionalRuleGroupRulesActionDetails) *AwsWafRegionalRuleGroupRulesDetails { + s.Action = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRegionalRuleGroupRulesDetails { + s.Priority = &v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRegionalRuleGroupRulesDetails { + s.RuleId = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalRuleGroupRulesDetails) SetType(v string) *AwsWafRegionalRuleGroupRulesDetails { + s.Type = &v + return s +} + +// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, +// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to +// add to a rule and, for each object, indicates whether you want to negate +// the settings. +type AwsWafRegionalRulePredicateListDetails struct { + _ struct{} `type:"structure"` + + // A unique identifier for a predicate in a rule, such as ByteMatchSetId or + // IPSetId. + DataId *string `type:"string"` + + // Specifies if you want WAF to allow, block, or count requests based on the + // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, or SizeConstraintSet. + Negated *bool `type:"boolean"` + + // The type of predicate in a rule, such as ByteMatch or IPSet. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRulePredicateListDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalRulePredicateListDetails) GoString() string { + return s.String() +} + +// SetDataId sets the DataId field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetDataId(v string) *AwsWafRegionalRulePredicateListDetails { + s.DataId = &v + return s +} + +// SetNegated sets the Negated field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetNegated(v bool) *AwsWafRegionalRulePredicateListDetails { + s.Negated = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalRulePredicateListDetails) SetType(v string) *AwsWafRegionalRulePredicateListDetails { + s.Type = &v + return s +} + +// Provides information about the web access control list (web ACL). The web +// ACL contains the rules that identify the requests that you want to allow, +// block, or count. +type AwsWafRegionalWebAclDetails struct { + _ struct{} `type:"structure"` + + // The action to perform if none of the rules contained in the web ACL match. + DefaultAction *string `type:"string"` + + // A name for the metrics for this web ACL. + MetricName *string `type:"string"` + + // A descriptive name for the web ACL. + Name *string `type:"string"` + + // An array that contains the action for each rule in a web ACL, the priority + // of the rule, and the ID of the rule. + RulesList []*AwsWafRegionalWebAclRulesListDetails `type:"list"` + + // The ID of the web ACL. + WebAclId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclDetails) GoString() string { + return s.String() +} + +// SetDefaultAction sets the DefaultAction field's value. +func (s *AwsWafRegionalWebAclDetails) SetDefaultAction(v string) *AwsWafRegionalWebAclDetails { + s.DefaultAction = &v + return s +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRegionalWebAclDetails) SetMetricName(v string) *AwsWafRegionalWebAclDetails { + s.MetricName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafRegionalWebAclDetails) SetName(v string) *AwsWafRegionalWebAclDetails { + s.Name = &v + return s +} + +// SetRulesList sets the RulesList field's value. +func (s *AwsWafRegionalWebAclDetails) SetRulesList(v []*AwsWafRegionalWebAclRulesListDetails) *AwsWafRegionalWebAclDetails { + s.RulesList = v + return s +} + +// SetWebAclId sets the WebAclId field's value. +func (s *AwsWafRegionalWebAclDetails) SetWebAclId(v string) *AwsWafRegionalWebAclDetails { + s.WebAclId = &v + return s +} + +// The action that WAF takes when a web request matches all conditions in the +// rule, such as allow, block, or count the request. +type AwsWafRegionalWebAclRulesListActionDetails struct { + _ struct{} `type:"structure"` + + // For actions that are associated with a rule, the action that WAF takes when + // a web request matches all conditions in a rule. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListActionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListActionDetails) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListActionDetails { + s.Type = &v + return s +} + +// A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects +// that identify the web requests that you want to allow, block, or count. +type AwsWafRegionalWebAclRulesListDetails struct { + _ struct{} `type:"structure"` + + // The action that AWS WAF takes when a web request matches all conditions in + // the rule, such as allow, block, or count the request. + Action *AwsWafRegionalWebAclRulesListActionDetails `type:"structure"` + + // Overrides the rule evaluation result in the rule group. + OverrideAction *AwsWafRegionalWebAclRulesListOverrideActionDetails `type:"structure"` + + // The order in which WAF evaluates the rules in a web ACL. + Priority *int64 `type:"integer"` + + // The ID of an WAF Regional rule to associate with a web ACL. + RuleId *string `type:"string"` + + // For actions that are associated with a rule, the action that WAF takes when + // a web request matches all conditions in a rule. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetAction(v *AwsWafRegionalWebAclRulesListActionDetails) *AwsWafRegionalWebAclRulesListDetails { + s.Action = v + return s +} + +// SetOverrideAction sets the OverrideAction field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetOverrideAction(v *AwsWafRegionalWebAclRulesListOverrideActionDetails) *AwsWafRegionalWebAclRulesListDetails { + s.OverrideAction = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetPriority(v int64) *AwsWafRegionalWebAclRulesListDetails { + s.Priority = &v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetRuleId(v string) *AwsWafRegionalWebAclRulesListDetails { + s.RuleId = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListDetails) SetType(v string) *AwsWafRegionalWebAclRulesListDetails { + s.Type = &v + return s +} + +// Provides details about the action to use in the place of the action that +// results from the rule group evaluation. +type AwsWafRegionalWebAclRulesListOverrideActionDetails struct { + _ struct{} `type:"structure"` + + // Overrides the rule evaluation result in the rule group. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRegionalWebAclRulesListOverrideActionDetails) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *AwsWafRegionalWebAclRulesListOverrideActionDetails) SetType(v string) *AwsWafRegionalWebAclRulesListOverrideActionDetails { + s.Type = &v + return s +} + +// Provides information about a WAF rule. This rule specifies the web requests +// that you want to allow, block, or count. +type AwsWafRuleDetails struct { + _ struct{} `type:"structure"` + + // The name of the metrics for this rule. + MetricName *string `type:"string"` + + // A descriptive name for the rule. + Name *string `type:"string"` + + // Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, and SizeConstraintSet objects that you want to add to a rule + // and, for each object, indicates whether you want to negate the settings. + PredicateList []*AwsWafRulePredicateListDetails `type:"list"` + + // The ID of the WAF rule. + RuleId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleDetails) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRuleDetails) SetMetricName(v string) *AwsWafRuleDetails { + s.MetricName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafRuleDetails) SetName(v string) *AwsWafRuleDetails { + s.Name = &v + return s +} + +// SetPredicateList sets the PredicateList field's value. +func (s *AwsWafRuleDetails) SetPredicateList(v []*AwsWafRulePredicateListDetails) *AwsWafRuleDetails { + s.PredicateList = v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRuleDetails) SetRuleId(v string) *AwsWafRuleDetails { + s.RuleId = &v + return s +} + +// Provides information about an WAF rule group. A rule group is a collection +// of rules for inspecting and controlling web requests. +type AwsWafRuleGroupDetails struct { + _ struct{} `type:"structure"` + + // The name of the metrics for this rule group. + MetricName *string `type:"string"` + + // The name of the rule group. + Name *string `type:"string"` + + // The ID of the rule group. + RuleGroupId *string `type:"string"` + + // Provides information about the rules attached to the rule group. These rules + // identify the web requests that you want to allow, block, or count. + Rules []*AwsWafRuleGroupRulesDetails `type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupDetails) GoString() string { + return s.String() +} + +// SetMetricName sets the MetricName field's value. +func (s *AwsWafRuleGroupDetails) SetMetricName(v string) *AwsWafRuleGroupDetails { + s.MetricName = &v + return s +} + +// SetName sets the Name field's value. +func (s *AwsWafRuleGroupDetails) SetName(v string) *AwsWafRuleGroupDetails { + s.Name = &v + return s +} + +// SetRuleGroupId sets the RuleGroupId field's value. +func (s *AwsWafRuleGroupDetails) SetRuleGroupId(v string) *AwsWafRuleGroupDetails { + s.RuleGroupId = &v + return s +} + +// SetRules sets the Rules field's value. +func (s *AwsWafRuleGroupDetails) SetRules(v []*AwsWafRuleGroupRulesDetails) *AwsWafRuleGroupDetails { + s.Rules = v + return s +} + +// Provides information about what action WAF should take on a web request when +// it matches the criteria defined in the rule. +type AwsWafRuleGroupRulesActionDetails struct { + _ struct{} `type:"structure"` + + // The action that WAF should take on a web request when it matches the rule's + // statement. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupRulesActionDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupRulesActionDetails) GoString() string { + return s.String() +} + +// SetType sets the Type field's value. +func (s *AwsWafRuleGroupRulesActionDetails) SetType(v string) *AwsWafRuleGroupRulesActionDetails { + s.Type = &v + return s +} + +// Provides information about the rules attached to the rule group. These rules +// identify the web requests that you want to allow, block, or count. +type AwsWafRuleGroupRulesDetails struct { + _ struct{} `type:"structure"` + + // Provides information about what action WAF should take on a web request when + // it matches the criteria defined in the rule. + Action *AwsWafRuleGroupRulesActionDetails `type:"structure"` + + // If you define more than one rule in a web ACL, WAF evaluates each request + // against the rules in order based on the value of Priority. + Priority *int64 `type:"integer"` + + // The rule ID for a rule. + RuleId *string `type:"string"` + + // The type of rule. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupRulesDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRuleGroupRulesDetails) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *AwsWafRuleGroupRulesDetails) SetAction(v *AwsWafRuleGroupRulesActionDetails) *AwsWafRuleGroupRulesDetails { + s.Action = v + return s +} + +// SetPriority sets the Priority field's value. +func (s *AwsWafRuleGroupRulesDetails) SetPriority(v int64) *AwsWafRuleGroupRulesDetails { + s.Priority = &v + return s +} + +// SetRuleId sets the RuleId field's value. +func (s *AwsWafRuleGroupRulesDetails) SetRuleId(v string) *AwsWafRuleGroupRulesDetails { + s.RuleId = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafRuleGroupRulesDetails) SetType(v string) *AwsWafRuleGroupRulesDetails { + s.Type = &v + return s +} + +// Provides details about the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, +// RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to +// add to a rule and, for each object, indicates whether you want to negate +// the settings. +type AwsWafRulePredicateListDetails struct { + _ struct{} `type:"structure"` + + // A unique identifier for a predicate in a rule, such as ByteMatchSetId or + // IPSetId. + DataId *string `type:"string"` + + // Specifies if you want WAF to allow, block, or count requests based on the + // settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, + // GeoMatchSet, or SizeConstraintSet. + Negated *bool `type:"boolean"` + + // The type of predicate in a rule, such as ByteMatch or IPSet. + Type *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRulePredicateListDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AwsWafRulePredicateListDetails) GoString() string { + return s.String() +} + +// SetDataId sets the DataId field's value. +func (s *AwsWafRulePredicateListDetails) SetDataId(v string) *AwsWafRulePredicateListDetails { + s.DataId = &v + return s +} + +// SetNegated sets the Negated field's value. +func (s *AwsWafRulePredicateListDetails) SetNegated(v bool) *AwsWafRulePredicateListDetails { + s.Negated = &v + return s +} + +// SetType sets the Type field's value. +func (s *AwsWafRulePredicateListDetails) SetType(v string) *AwsWafRulePredicateListDetails { + s.Type = &v + return s +} + +// Provides information about an WAF web access control list (web ACL). type AwsWafWebAclDetails struct { _ struct{} `type:"structure"` - // The action to perform if none of the rules contained in the WebACL match. + // The action to perform if none of the rules contained in the web ACL match. DefaultAction *string `type:"string"` - // A friendly name or description of the WebACL. You can't change the name of - // a WebACL after you create it. + // A friendly name or description of the web ACL. You can't change the name + // of a web ACL after you create it. Name *string `type:"string"` - // An array that contains the action for each rule in a WebACL, the priority + // An array that contains the action for each rule in a web ACL, the priority // of the rule, and the ID of the rule. Rules []*AwsWafWebAclRule `type:"list"` - // A unique identifier for a WebACL. + // A unique identifier for a web ACL. WebAclId *string `type:"string"` } @@ -30813,7 +33583,7 @@ func (s *AwsWafWebAclDetails) SetWebAclId(v string) *AwsWafWebAclDetails { return s } -// Details for a rule in an WAF WebACL. +// Details for a rule in an WAF web ACL. type AwsWafWebAclRule struct { _ struct{} `type:"structure"` @@ -30836,14 +33606,14 @@ type AwsWafWebAclRule struct { // those requests are counted. // // ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup - // to a WebACL. In this case you do not use ActivatedRule|Action. For all other - // update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction. + // to a web ACL. In this case you do not use ActivatedRule Action. For all other + // update requests, ActivatedRule Action is used instead of ActivatedRule OverrideAction. OverrideAction *WafOverrideAction `type:"structure"` - // Specifies the order in which the rules in a WebACL are evaluated. Rules with - // a lower value for Priority are evaluated before rules with a higher value. - // The value must be a unique integer. If you add multiple rules to a WebACL, - // the values do not need to be consecutive. + // Specifies the order in which the rules in a web ACL are evaluated. Rules + // with a lower value for Priority are evaluated before rules with a higher + // value. The value must be a unique integer. If you add multiple rules to a + // web ACL, the values do not need to be consecutive. Priority *int64 `type:"integer"` // The identifier for a rule. @@ -31933,10 +34703,13 @@ func (s *Compliance) SetStatusReasons(v []*StatusReason) *Compliance { type ContainerDetails struct { _ struct{} `type:"structure"` - // The identifier of the image related to a finding. + // The runtime of the container. + ContainerRuntime *string `type:"string"` + + // The identifier of the container image related to a finding. ImageId *string `type:"string"` - // The name of the image related to a finding. + // The name of the container image related to a finding. ImageName *string `type:"string"` // Indicates when the container started. @@ -31948,6 +34721,13 @@ type ContainerDetails struct { // The name of the container related to a finding. Name *string `type:"string"` + + // When this parameter is true, the container is given elevated privileges on + // the host container instance (similar to the root user). + Privileged *bool `type:"boolean"` + + // Provides information about the mounting of a volume in a container. + VolumeMounts []*VolumeMount `type:"list"` } // String returns the string representation. @@ -31968,6 +34748,12 @@ func (s ContainerDetails) GoString() string { return s.String() } +// SetContainerRuntime sets the ContainerRuntime field's value. +func (s *ContainerDetails) SetContainerRuntime(v string) *ContainerDetails { + s.ContainerRuntime = &v + return s +} + // SetImageId sets the ImageId field's value. func (s *ContainerDetails) SetImageId(v string) *ContainerDetails { s.ImageId = &v @@ -31992,6 +34778,18 @@ func (s *ContainerDetails) SetName(v string) *ContainerDetails { return s } +// SetPrivileged sets the Privileged field's value. +func (s *ContainerDetails) SetPrivileged(v bool) *ContainerDetails { + s.Privileged = &v + return s +} + +// SetVolumeMounts sets the VolumeMounts field's value. +func (s *ContainerDetails) SetVolumeMounts(v []*VolumeMount) *ContainerDetails { + s.VolumeMounts = v + return s +} + // Information about a country. type Country struct { _ struct{} `type:"structure"` @@ -34468,6 +37266,65 @@ func (s EnableSecurityHubOutput) GoString() string { return s.String() } +// Provides information about the file paths that were affected by the threat. +type FilePaths struct { + _ struct{} `type:"structure"` + + // The name of the infected or suspicious file corresponding to the hash. + FileName *string `type:"string"` + + // Path to the infected or suspicious file on the resource it was detected on. + FilePath *string `type:"string"` + + // The hash value for the infected or suspicious file. + Hash *string `type:"string"` + + // The Amazon Resource Name (ARN) of the resource on which the threat was detected. + ResourceId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilePaths) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s FilePaths) GoString() string { + return s.String() +} + +// SetFileName sets the FileName field's value. +func (s *FilePaths) SetFileName(v string) *FilePaths { + s.FileName = &v + return s +} + +// SetFilePath sets the FilePath field's value. +func (s *FilePaths) SetFilePath(v string) *FilePaths { + s.FilePath = &v + return s +} + +// SetHash sets the Hash field's value. +func (s *FilePaths) SetHash(v string) *FilePaths { + s.Hash = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *FilePaths) SetResourceId(v string) *FilePaths { + s.ResourceId = &v + return s +} + // A finding aggregator. A finding aggregator contains the configuration for // finding aggregation. type FindingAggregator struct { @@ -39093,12 +41950,21 @@ type ResourceDetails struct { // Provides details about an Certificate Manager certificate. AwsCertificateManagerCertificate *AwsCertificateManagerCertificateDetails `type:"structure"` + // Details about an CloudFormation stack. A stack is a collection of Amazon + // Web Services resources that you can manage as a single unit. + AwsCloudFormationStack *AwsCloudFormationStackDetails `type:"structure"` + // Details about a CloudFront distribution. AwsCloudFrontDistribution *AwsCloudFrontDistributionDetails `type:"structure"` // Provides details about a CloudTrail trail. AwsCloudTrailTrail *AwsCloudTrailTrailDetails `type:"structure"` + // Details about an Amazon CloudWatch alarm. An alarm allows you to monitor + // and receive alerts about your Amazon Web Services resources and applications + // across multiple Regions. + AwsCloudWatchAlarm *AwsCloudWatchAlarmDetails `type:"structure"` + // Details for an CodeBuild project. AwsCodeBuildProject *AwsCodeBuildProjectDetails `type:"structure"` @@ -39123,16 +41989,25 @@ type ResourceDetails struct { // Details about a subnet in Amazon EC2. AwsEc2Subnet *AwsEc2SubnetDetails `type:"structure"` - // Details for an EC2 volume. + // Details about an Amazon EC2 transit gateway that interconnects your virtual + // private clouds (VPC) and on-premises networks. + AwsEc2TransitGateway *AwsEc2TransitGatewayDetails `type:"structure"` + + // Details for an Amazon EC2 volume. AwsEc2Volume *AwsEc2VolumeDetails `type:"structure"` - // Details for an EC2 VPC. + // Details for an Amazon EC2 VPC. AwsEc2Vpc *AwsEc2VpcDetails `type:"structure"` // Details about the service configuration for a VPC endpoint service. AwsEc2VpcEndpointService *AwsEc2VpcEndpointServiceDetails `type:"structure"` - // Details about an EC2 VPN connection. + // Details about an Amazon EC2 VPC peering connection. A VPC peering connection + // is a networking connection between two VPCs that enables you to route traffic + // between them privately. + AwsEc2VpcPeeringConnection *AwsEc2VpcPeeringConnectionDetails `type:"structure"` + + // Details about an Amazon EC2 VPN connection. AwsEc2VpnConnection *AwsEc2VpnConnectionDetails `type:"structure"` // Information about an Amazon ECR image. @@ -39141,16 +42016,28 @@ type ResourceDetails struct { // Information about an Amazon Elastic Container Registry repository. AwsEcrRepository *AwsEcrRepositoryDetails `type:"structure"` - // Details about an ECS cluster. + // Details about an Amazon ECS cluster. AwsEcsCluster *AwsEcsClusterDetails `type:"structure"` + // Provides information about a Docker container that's part of a task. + AwsEcsContainer *AwsEcsContainerDetails `type:"structure"` + // Details about a service within an ECS cluster. AwsEcsService *AwsEcsServiceDetails `type:"structure"` + // Details about a task in a cluster. + AwsEcsTask *AwsEcsTaskDetails `type:"structure"` + // Details about a task definition. A task definition describes the container // and volume definitions of an Amazon Elastic Container Service task. AwsEcsTaskDefinition *AwsEcsTaskDefinitionDetails `type:"structure"` + // Details about an Amazon EFS access point. An access point is an application-specific + // view into an EFS file system that applies an operating system user and group, + // and a file system path, to any file system request made through the access + // point. + AwsEfsAccessPoint *AwsEfsAccessPointDetails `type:"structure"` + // Details about an Amazon EKS cluster. AwsEksCluster *AwsEksClusterDetails `type:"structure"` @@ -39181,6 +42068,9 @@ type ResourceDetails struct { // Details about an IAM user. AwsIamUser *AwsIamUserDetails `type:"structure"` + // Details about an Amazon Kinesis data stream. + AwsKinesisStream *AwsKinesisStreamDetails `type:"structure"` + // Details about an KMS key. AwsKmsKey *AwsKmsKeyDetails `type:"structure"` @@ -39251,7 +42141,22 @@ type ResourceDetails struct { // Details about a rate-based rule for Regional resources. AwsWafRegionalRateBasedRule *AwsWafRegionalRateBasedRuleDetails `type:"structure"` - // Details for an WAF WebACL. + // Details about an WAF rule for Regional resources. + AwsWafRegionalRule *AwsWafRegionalRuleDetails `type:"structure"` + + // Details about an WAF rule group for Regional resources. + AwsWafRegionalRuleGroup *AwsWafRegionalRuleGroupDetails `type:"structure"` + + // Details about an WAF web access control list (web ACL) for Regional resources. + AwsWafRegionalWebAcl *AwsWafRegionalWebAclDetails `type:"structure"` + + // Details about an WAF rule for global resources. + AwsWafRule *AwsWafRuleDetails `type:"structure"` + + // Details about an WAF rule group for global resources. + AwsWafRuleGroup *AwsWafRuleGroupDetails `type:"structure"` + + // Details for an WAF web ACL. AwsWafWebAcl *AwsWafWebAclDetails `type:"structure"` // Information about the encryption configuration for X-Ray. @@ -39348,6 +42253,12 @@ func (s *ResourceDetails) SetAwsCertificateManagerCertificate(v *AwsCertificateM return s } +// SetAwsCloudFormationStack sets the AwsCloudFormationStack field's value. +func (s *ResourceDetails) SetAwsCloudFormationStack(v *AwsCloudFormationStackDetails) *ResourceDetails { + s.AwsCloudFormationStack = v + return s +} + // SetAwsCloudFrontDistribution sets the AwsCloudFrontDistribution field's value. func (s *ResourceDetails) SetAwsCloudFrontDistribution(v *AwsCloudFrontDistributionDetails) *ResourceDetails { s.AwsCloudFrontDistribution = v @@ -39360,6 +42271,12 @@ func (s *ResourceDetails) SetAwsCloudTrailTrail(v *AwsCloudTrailTrailDetails) *R return s } +// SetAwsCloudWatchAlarm sets the AwsCloudWatchAlarm field's value. +func (s *ResourceDetails) SetAwsCloudWatchAlarm(v *AwsCloudWatchAlarmDetails) *ResourceDetails { + s.AwsCloudWatchAlarm = v + return s +} + // SetAwsCodeBuildProject sets the AwsCodeBuildProject field's value. func (s *ResourceDetails) SetAwsCodeBuildProject(v *AwsCodeBuildProjectDetails) *ResourceDetails { s.AwsCodeBuildProject = v @@ -39408,6 +42325,12 @@ func (s *ResourceDetails) SetAwsEc2Subnet(v *AwsEc2SubnetDetails) *ResourceDetai return s } +// SetAwsEc2TransitGateway sets the AwsEc2TransitGateway field's value. +func (s *ResourceDetails) SetAwsEc2TransitGateway(v *AwsEc2TransitGatewayDetails) *ResourceDetails { + s.AwsEc2TransitGateway = v + return s +} + // SetAwsEc2Volume sets the AwsEc2Volume field's value. func (s *ResourceDetails) SetAwsEc2Volume(v *AwsEc2VolumeDetails) *ResourceDetails { s.AwsEc2Volume = v @@ -39426,6 +42349,12 @@ func (s *ResourceDetails) SetAwsEc2VpcEndpointService(v *AwsEc2VpcEndpointServic return s } +// SetAwsEc2VpcPeeringConnection sets the AwsEc2VpcPeeringConnection field's value. +func (s *ResourceDetails) SetAwsEc2VpcPeeringConnection(v *AwsEc2VpcPeeringConnectionDetails) *ResourceDetails { + s.AwsEc2VpcPeeringConnection = v + return s +} + // SetAwsEc2VpnConnection sets the AwsEc2VpnConnection field's value. func (s *ResourceDetails) SetAwsEc2VpnConnection(v *AwsEc2VpnConnectionDetails) *ResourceDetails { s.AwsEc2VpnConnection = v @@ -39450,18 +42379,36 @@ func (s *ResourceDetails) SetAwsEcsCluster(v *AwsEcsClusterDetails) *ResourceDet return s } +// SetAwsEcsContainer sets the AwsEcsContainer field's value. +func (s *ResourceDetails) SetAwsEcsContainer(v *AwsEcsContainerDetails) *ResourceDetails { + s.AwsEcsContainer = v + return s +} + // SetAwsEcsService sets the AwsEcsService field's value. func (s *ResourceDetails) SetAwsEcsService(v *AwsEcsServiceDetails) *ResourceDetails { s.AwsEcsService = v return s } +// SetAwsEcsTask sets the AwsEcsTask field's value. +func (s *ResourceDetails) SetAwsEcsTask(v *AwsEcsTaskDetails) *ResourceDetails { + s.AwsEcsTask = v + return s +} + // SetAwsEcsTaskDefinition sets the AwsEcsTaskDefinition field's value. func (s *ResourceDetails) SetAwsEcsTaskDefinition(v *AwsEcsTaskDefinitionDetails) *ResourceDetails { s.AwsEcsTaskDefinition = v return s } +// SetAwsEfsAccessPoint sets the AwsEfsAccessPoint field's value. +func (s *ResourceDetails) SetAwsEfsAccessPoint(v *AwsEfsAccessPointDetails) *ResourceDetails { + s.AwsEfsAccessPoint = v + return s +} + // SetAwsEksCluster sets the AwsEksCluster field's value. func (s *ResourceDetails) SetAwsEksCluster(v *AwsEksClusterDetails) *ResourceDetails { s.AwsEksCluster = v @@ -39522,6 +42469,12 @@ func (s *ResourceDetails) SetAwsIamUser(v *AwsIamUserDetails) *ResourceDetails { return s } +// SetAwsKinesisStream sets the AwsKinesisStream field's value. +func (s *ResourceDetails) SetAwsKinesisStream(v *AwsKinesisStreamDetails) *ResourceDetails { + s.AwsKinesisStream = v + return s +} + // SetAwsKmsKey sets the AwsKmsKey field's value. func (s *ResourceDetails) SetAwsKmsKey(v *AwsKmsKeyDetails) *ResourceDetails { s.AwsKmsKey = v @@ -39660,6 +42613,36 @@ func (s *ResourceDetails) SetAwsWafRegionalRateBasedRule(v *AwsWafRegionalRateBa return s } +// SetAwsWafRegionalRule sets the AwsWafRegionalRule field's value. +func (s *ResourceDetails) SetAwsWafRegionalRule(v *AwsWafRegionalRuleDetails) *ResourceDetails { + s.AwsWafRegionalRule = v + return s +} + +// SetAwsWafRegionalRuleGroup sets the AwsWafRegionalRuleGroup field's value. +func (s *ResourceDetails) SetAwsWafRegionalRuleGroup(v *AwsWafRegionalRuleGroupDetails) *ResourceDetails { + s.AwsWafRegionalRuleGroup = v + return s +} + +// SetAwsWafRegionalWebAcl sets the AwsWafRegionalWebAcl field's value. +func (s *ResourceDetails) SetAwsWafRegionalWebAcl(v *AwsWafRegionalWebAclDetails) *ResourceDetails { + s.AwsWafRegionalWebAcl = v + return s +} + +// SetAwsWafRule sets the AwsWafRule field's value. +func (s *ResourceDetails) SetAwsWafRule(v *AwsWafRuleDetails) *ResourceDetails { + s.AwsWafRule = v + return s +} + +// SetAwsWafRuleGroup sets the AwsWafRuleGroup field's value. +func (s *ResourceDetails) SetAwsWafRuleGroup(v *AwsWafRuleGroupDetails) *ResourceDetails { + s.AwsWafRuleGroup = v + return s +} + // SetAwsWafWebAcl sets the AwsWafWebAcl field's value. func (s *ResourceDetails) SetAwsWafWebAcl(v *AwsWafWebAclDetails) *ResourceDetails { s.AwsWafWebAcl = v @@ -41788,6 +44771,66 @@ func (s TagResourceOutput) GoString() string { return s.String() } +// Provides information about the threat detected in a security finding and +// the file paths that were affected by the threat. +type Threat struct { + _ struct{} `type:"structure"` + + // Provides information about the file paths that were affected by the threat. + FilePaths []*FilePaths `type:"list"` + + // This total number of items in which the threat has been detected. + ItemCount *int64 `type:"integer"` + + // The name of the threat. + Name *string `type:"string"` + + // The severity of the threat. + Severity *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Threat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Threat) GoString() string { + return s.String() +} + +// SetFilePaths sets the FilePaths field's value. +func (s *Threat) SetFilePaths(v []*FilePaths) *Threat { + s.FilePaths = v + return s +} + +// SetItemCount sets the ItemCount field's value. +func (s *Threat) SetItemCount(v int64) *Threat { + s.ItemCount = &v + return s +} + +// SetName sets the Name field's value. +func (s *Threat) SetName(v string) *Threat { + s.Name = &v + return s +} + +// SetSeverity sets the Severity field's value. +func (s *Threat) SetSeverity(v string) *Threat { + s.Severity = &v + return s +} + // Details about the threat intelligence related to a finding. type ThreatIntelIndicator struct { _ struct{} `type:"structure"` @@ -42628,6 +45671,165 @@ func (s UpdateStandardsControlOutput) GoString() string { return s.String() } +// Describes the mounting of a volume in a container. +type VolumeMount struct { + _ struct{} `type:"structure"` + + // The path in the container at which the volume should be mounted. + MountPath *string `type:"string"` + + // The name of the volume. + Name *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VolumeMount) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VolumeMount) GoString() string { + return s.String() +} + +// SetMountPath sets the MountPath field's value. +func (s *VolumeMount) SetMountPath(v string) *VolumeMount { + s.MountPath = &v + return s +} + +// SetName sets the Name field's value. +func (s *VolumeMount) SetName(v string) *VolumeMount { + s.Name = &v + return s +} + +// Provides details about the IPv4 CIDR blocks for the VPC. +type VpcInfoCidrBlockSetDetails struct { + _ struct{} `type:"structure"` + + // The IPv4 CIDR block for the VPC. + CidrBlock *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoCidrBlockSetDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoCidrBlockSetDetails) GoString() string { + return s.String() +} + +// SetCidrBlock sets the CidrBlock field's value. +func (s *VpcInfoCidrBlockSetDetails) SetCidrBlock(v string) *VpcInfoCidrBlockSetDetails { + s.CidrBlock = &v + return s +} + +// Provides details about the IPv6 CIDR blocks for the VPC. +type VpcInfoIpv6CidrBlockSetDetails struct { + _ struct{} `type:"structure"` + + // The IPv6 CIDR block for the VPC. + Ipv6CidrBlock *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoIpv6CidrBlockSetDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoIpv6CidrBlockSetDetails) GoString() string { + return s.String() +} + +// SetIpv6CidrBlock sets the Ipv6CidrBlock field's value. +func (s *VpcInfoIpv6CidrBlockSetDetails) SetIpv6CidrBlock(v string) *VpcInfoIpv6CidrBlockSetDetails { + s.Ipv6CidrBlock = &v + return s +} + +// Provides information about the VPC peering connection options for the accepter +// or requester VPC. +type VpcInfoPeeringOptionsDetails struct { + _ struct{} `type:"structure"` + + // Indicates whether a local VPC can resolve public DNS hostnames to private + // IP addresses when queried from instances in a peer VPC. + AllowDnsResolutionFromRemoteVpc *bool `type:"boolean"` + + // Indicates whether a local ClassicLink connection can communicate with the + // peer VPC over the VPC peering connection. + AllowEgressFromLocalClassicLinkToRemoteVpc *bool `type:"boolean"` + + // Indicates whether a local VPC can communicate with a ClassicLink connection + // in the peer VPC over the VPC peering connection. + AllowEgressFromLocalVpcToRemoteClassicLink *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoPeeringOptionsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s VpcInfoPeeringOptionsDetails) GoString() string { + return s.String() +} + +// SetAllowDnsResolutionFromRemoteVpc sets the AllowDnsResolutionFromRemoteVpc field's value. +func (s *VpcInfoPeeringOptionsDetails) SetAllowDnsResolutionFromRemoteVpc(v bool) *VpcInfoPeeringOptionsDetails { + s.AllowDnsResolutionFromRemoteVpc = &v + return s +} + +// SetAllowEgressFromLocalClassicLinkToRemoteVpc sets the AllowEgressFromLocalClassicLinkToRemoteVpc field's value. +func (s *VpcInfoPeeringOptionsDetails) SetAllowEgressFromLocalClassicLinkToRemoteVpc(v bool) *VpcInfoPeeringOptionsDetails { + s.AllowEgressFromLocalClassicLinkToRemoteVpc = &v + return s +} + +// SetAllowEgressFromLocalVpcToRemoteClassicLink sets the AllowEgressFromLocalVpcToRemoteClassicLink field's value. +func (s *VpcInfoPeeringOptionsDetails) SetAllowEgressFromLocalVpcToRemoteClassicLink(v bool) *VpcInfoPeeringOptionsDetails { + s.AllowEgressFromLocalVpcToRemoteClassicLink = &v + return s +} + // A vulnerability associated with a finding. type Vulnerability struct { _ struct{} `type:"structure"` @@ -42833,7 +46035,7 @@ type WafAction struct { // * COUNT - WAF increments a counter of the requests that match all of the // conditions in the rule. WAF then continues to inspect the web request // based on the remaining rules in the web ACL. You can't specify COUNT for - // the default action for a WebACL. + // the default action for a web ACL. Type *string `type:"string"` }